Danil200000006
11.02.2021 22:09

Подпрограмма. Процедура заранее! Составить программу, которая меняет у пяти любых чисел, вводимых с клавиатуры, порядок следования цифр в числе на обратный.

В качестве процедуры применяется серия команд, определяющая состав числа и выводящая число в обратном порядке. Для этого используется цикл While с условием x<>0, где х – любое число вводимое с клавиатуры. Внутри цикла сначала определяется цифры, стоящая в конце числа, через mod, затем эта цифра выводится на экран, а дальше идет уменьшение самого числа х через div.
В основной программе используется цикл For для ввода с клавиатуры 5 любых чисел.

Нажмите на рекламу ниже и сразу увидите ответ
Популярные вопросы:
Ответ:
tim14stefan24
17.07.2020 18:23

#include <iostream>

#include <cstdlib>

#include <ctime>

using namespace std;

int main()

{

   const int n = 4;

   int a;

   int mas[n][n];

   srand(time(NULL));

   for (int i = 0; i < n; i++)

   {

       for (int j = 0; j < n; j++)

       {

           a = rand() % 11 - 5 ;

           mas[i][j] = a;

          cout.width(3);

            cout <<mas[i][j] <<" ";

       }

        cout <<endl;

   }

   cout <<endl;

   

for (int i = 0; i < n; i++)

  {

   for (int j = 0; j < n; j++)

     {

     if (mas[i][j]<0){

       mas[i][j]=mas[i][j]*mas[i][0];

       

       }

       cout.width(3);

       cout <<mas[i][j] <<" ";

     }

     cout <<endl;

  }  

   

   

   return 0;

}

0,0(0 оценок)
Ответ:
ankerkor
17.07.2020 18:23

Программа работает с учётом того, что если первый элемент отрицательный, то он умножается сам на себя и потом все последующие элементы умножаются уже на новый первый элемент в массиве, который умножился сам на себя. Так что такие большие цифры обусловлены именно этим.

#include <iostream>

#include <time.h>

using namespace std;

void print_array(int** arr, int n, int m) {

for (size_t i = 0; i < n; i++) {

 for (size_t j = 0; j < m; j++) {

  cout << arr[i][j] << " ";

 }

 cout << endl;

}

cout << endl;

}

int** auto_input_matrix(int** arr, int n, int m) {

for (size_t i = 0; i < n; i++) {

 for (size_t j = 0; j < m; j++) {

  arr[i][j] = rand() % 200 - 100;

 }

}

return arr;

}

int** multiplying_negative_elements_of_an_array_by_the_first_element(int** arr, int n, int m) {

for (size_t i = 0; i < n; i++) {

 for (size_t j = 0; j < m; j++) {

  if (arr[i][j] < 0) {

   arr[i][j] = arr[i][j] * arr[i][0];

  }

 }

}

return arr;

}

int main() {

srand(time(NULL));

setlocale(LC_ALL, "Russian");

int n, m;

cout << "Введите количество строк в массиве: ";

cin >> n;

cout << "Введите количество элементов в массиве построчно: ";

cin >> m;

int** array = new int*[n];

for (size_t i = 0; i < n; i++) {

 array[i] = new int[m];

}

array = auto_input_matrix(array, n, m);

print_array(array, n, m);

array = multiplying_negative_elements_of_an_array_by_the_first_element(array, n, m);

print_array(array, n, m);

delete[] array;

}

0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota Оформи подписку
logo
Начни делиться знаниями
Вход Регистрация
Что ты хочешь узнать?
Спроси ai-бота