Напишите, программу, которая заполняет массив из 10 элементов случайными числами на, отрезке [–5; 5] и находит сумму положительных элементов. (язык c++)
var a : array of array of byte; i, j, k, l, m, n, t : byte; max : array[1..max_count] of byte; ch : char;
begin write('Введите количество строк: '); readln(n); write('Введите количество столбцов: '); readln(m); setLength(a, n); for i:=0 to n-1 do setLength(a[i], m); write('Заполнить матрицу случайными числами (y/n): '); readln(ch); if ((ch='y') or (ch='Y')) then begin randomize; for i:=0 to n-1 do begin for j:=0 to m-1 do begin a[i][j] := random(251); write(a[i][j]: 4, ' '); end; writeln; end; end else begin for i:=0 to n-1 do begin writeln('Заполните строку ', i+1); for j:=0 to m-1 do readln(a[i][j]); end; for i:=0 to n-1 do begin for j:=0 to m-1 do write(a[i][j]:4, ' '); writeln; end; end;
t :=255; for k:=1 to max_count do begin if k>1 then t:=max[k-1]; l := a[0][0]; for i:=0 to n-1 do for j:=0 to m-1 do if ((a[i][j] > l) and (a[i][j] < t)) then l:=a[i][j]; max[k] := l; end; writeln; write(max_count, ' максимальных элемента: '); for i:=1 to max_count do write(max[i], ' '); writeln; end.
Home – перемещение курсора ввода текста в начало строки (на неполных клавиатурах тот же эффект достигается через комбинацию клавиш fn + ←).Home – перемещение курсора ввода текста в начало строки (на неполных клавиатурах тот же эффект достигается через комбинацию клавиш fn + ←)End – перемещение курсора ввода текста в конец строки (на неполных клавиатурах тот же эффект достигается через комбинацию клавиш fn + →).←↑→↓ - клавиши перемещения курсора ввода по тексту.Ctrl + → - перемещение курсора на одно слово вправо.Ctrl + ← - перемещение курсора на одно слово влево.Page Up – на экранную страницу вверх.Page Down – на экранную страницу вниз.Ctrl + Page Up – на страницу вверх.Ctrl + Page Down – на страницу вниз.Ctrl + Home – переход в начало текста / документа.Ctrl + End – переход в конец текста / документа.Shift + F5 – переход к месту недавнего редактирования текста.
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
int arr[10], sum = 0; // Создаём массив и переменную, в которой будет сумма
for (int i = 0; i < 10; i++) {
int r = rand() %11 - 5; // Генерация случайного числа в промежутке от [-5; 5]
arr[i] = r; // Присваем значение перменной
cout << arr[i] << " "; // Вывод массива.
}
cout << endl;
for (int i = 0; i < 10; i++) {
if (arr[i] > 0) {
sum += arr[i]; // sum = sum + arr[i]
}
}
cout << "Summa polozhitelnih: " << sum << endl;
return 0;
}
Более оптимальный
#include <iostream>
#include <stdlib.h>
using namespace std;
int main()
{
int arr[10], sum = 0; // Создаём массив и переменную, в которой будет сумма
for (int i = 0; i < 10; i++) {
int r = rand() %11 - 5; // Генерация случайного числа в промежутке от [-5; 5]
arr[i] = r; // Присваем значение перменной
cout << arr[i] << " "; // Вывод массива.
if (i == 9) { cout << endl;}
if (arr[i] > 0) {
sum += arr[i]; // sum = sum + arr[i]
}
}
cout << "Summa polozhitelnih: " << sum << endl;
return 0;
}