М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
Pikasso07
Pikasso07
07.10.2022 00:21 •  Информатика

Составить программу на паскале. одномерный массив состоит из 15 целых чисел. найти среднее арифметическое четных чисел массива. заранее

👇
Открыть все ответы
Ответ:
Настён1989
Настён1989
07.10.2022

program Change;

var

 n, i, j, t: Integer;

 A: array of Integer;

begin

 Write ('Введите четное число N: ');

 ReadLn (n);

 if n mod 2 = 0 then begin

   SetLength (A, n);

   Randomize;

   for i := Low (A) to High (A) do begin

     A [i] := Random (100);

     Write (A [i] :3, ' ');

   end;

   i := 0;

   while i < n do begin

     t := A [i];

     A [i] := A [i + 1];

     A [i + 1] := t;

     i := i + 2;

   end;

   WriteLn;

   for i := Low (A) to High (A) do begin

     Write (A [i] :3, ' ');

   end;

 end else

   WriteLn ('Введено не четное число.');

 ReadLn;

end.

4,8(20 оценок)
Ответ:
Дишka
Дишka
07.10.2022

Программа №1

#include <iostream>

#include <time.h>

using namespace std;          // чтобы не писать std:: каждый раз перед cin cout

int main()

{

 setlocale(LC_ALL, "Russian");          // для правильного отображения русского текста на экране

 int n, i, imax, s;

 cout << "Размерность массива: ";

 cin >> n;          // вводится размерность массива

 int* a = new int[n];          // создается новый массив размерностью n

 srand(time(NULL));          // инициализация датчика случайных чисел

 for (i = 0; i < n; i++) {          // цикл заполнения массива случайными числами от 0  до 100

   a[i] = (double)rand() / (RAND_MAX + 1) * 100;          // случайное число в элемент массива

   cout << a[i] << ' ';          // и вывести его на экран

 }

 imax = 0;          // начальное значение для индекса

 for (i = 0; i < n; i++) {          //цикл для всех элементов массива

   if (a[i] > a[imax])          // если найден элемент массива больше текущего, то сохраняем его индекс

     imax = i;          //, то сохраняем его индекс

 }

 cout << "\nиндекс максимального элемента = " << imax;          // выводим этот индекс на экран

 s = 0;          // начальное значение для суммы

 for (i = imax + 1; i < n; i++) {          //цикл начиная от максимального индекса до конца массива

   s = s + a[i];          // суммируем элементы

 }

 cout << "\nСумма после максимального = " << s << '\n';           // вывыод

 return 0;

}

// Программа №2

#include <iostream>

#include <time.h>

#include <iomanip>

using namespace std;          // то же что в первой программе, повторять не буду

int main()

{

 setlocale(LC_ALL, "Russian");

 int n, i, j, jmax, jmin;

 cout << "Размерность массива: ";

 cin >> n;          // вводится размерность массива

 srand(time(NULL));

 int** a = new int* [n];          // создается в памяти новый 2-х мерный массив размерностью n строк

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

   a[i] = new int[5];          // для каждой строки массива создается в памяти столбец (размерность скорее всего нужно заменить на [n])

 for (i = 0; i < n; i++) {          // цикл для всех строк массива

   cout << "\n";

   for (j = 0; j < n; j++) {          // цикл для всех столбцов массива

     a[i][j] = (double)rand() / (RAND_MAX + 1) * 100;          // в элемент массива случайное число от 0 до 100

     cout << setw(4) << a[i][j] << ' ';          // и выводим его на экран

   }

 }

 for (i = 0; i < n; i++) {          // цикл для всех строк массива

   jmax = 0;          // инициализация максимального и минимального индексов

   jmin = 0;

   for (j = 0; j < n; j++) {          // цикл для всех столбцов массива

     if (a[i][j] > a[i][jmax])          // если элемент массива больше максимального

       jmax = j;          // сохраняем его индекс

     if (a[i][j] < a[i][jmin])          // если элемент массива меньше минимального

       jmin = j;          // сохраняем его индекс

   }

   a[i][0] = a[i][jmax];          // замена первого элемента строки максимальным элементом

   a[i][n - 1] = a[i][jmin];          // замена последнего элемента строки минимальным элементом

 }

 cout << "\n\nРезультат:\n";

 for (i = 0; i < n; i++) {          // вывод результата вычислений

   cout << "\n";

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

     cout << setw(4) << a[i][j] << ' ';

   }

 }

 cout << "\n";

 return 0;

}

4,6(29 оценок)
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ