Поиск положительных элементов массива - Free Pascal
Формулировка задачи:
Помогите сделать!!!
Задача:
Дано натуральное число n. Выяснить, сколько положительных элементов содержит массив A[1..n, 1..n], если aij = sin(i+j/2).
Программу написал, но она выводит кривой массив. Препод бесится из-за этого.
program xxx;
const
n=9999;
var
a:array[1..n, 1..n] of real;
i,j,k,m:integer;
Begin
writeln(Программа , определяющая положительные элементы массива ');
writeln('Выполнил студент гр. ***********');
Writeln(‘Введите размер’);
Readln(k);
for i:=1 to k do
for j:=1 to k do
a[i,j]:=sin(i+j/2);
for i:=1 to k do
for j:=1 to k do
write(a[i,j]:8:4);
writeln;
m:=0;
for i:=1 to k do
for j:=1 to k do
if a[i,j]>0 then
m:=m+1;
writeln(‘ Всего’,’ ‘,m,’ ‘,’положительных чисел’);
readln;
end.
Спасайте, товарищи!)
Решение задачи: «Поиск положительных элементов массива»
textual
Листинг программы
program xxx;
const
n=9999;
var
a:array[1..n, 1..n] of real;
i,j,k,m:integer;
Begin
writeln('Программа , определяющая положительные элементы массива ');
writeln('Выполнил студент гр. ***********');
Writeln('Введите размер');
Readln(k);
for i:=1 to k do
for j:=1 to k do
a[i,j]:=sin(i+j/2);
for i:=1 to k do
begin
for j:=1 to k do
write(a[i,j]:8:4);
writeln;
end;
m:=0;
for i:=1 to k do
for j:=1 to k do
if a[i,j]>0 then
m:=m+1;
writeln(' Всего',' ',m,' ','положительных чисел');
readln;
end.
Объяснение кода листинга программы
- Объявление переменных: — a: массив размером [1..n, 1..n] для хранения значений; — i, j, k, m: целочисленные переменные для выполнения цикла и подсчета положительных чисел.
- Ввод размера массива с помощью функции Readln(k).
- Заполнение массива a с помощью двух вложенных циклов. Значение элемента a[i,j] равно синусу (i+j/2).
- Вывод значений массива a с помощью двух вложенных циклов и функции write(a[i,j]:8:4).
- Инициализация переменной m=0 для подсчета положительных чисел.
- Проверка каждого элемента массива a с помощью двух вложенных циклов. Если значение элемента больше нуля, то к переменной m прибавляется единица.
- Вывод сообщения о количестве положительных чисел с помощью функции writeln(' Всего',' ',m,' ','положительных чисел').
- Ввод символа для завершения работы программы с помощью функции readln().
- Конец программы.