1) Слово "двовимірний" означає, що масив є таблицею (з рядками і стовпцями), а не те, що його довжина =2 елементи. Тому значення n (рядок const n=2;) краще замінити на щось быльше, хоча б 10. 2) У розділі var двовимірний масив описується так: var B:array[1..n, 1..n] of integer; (вважаємо масив квадратним) 3) Бажано підкоректувати за на ввід, тому що користувач бачить одне і те ж для кожного елемента:B[i]= Потрібно написати так: write('B[',i,',',j,]='); read ('B[i,j]); - тут зайва лапка, має бути так read (B[i,j]); і бажано замість read використати readln, щоб кожне нове число користувач мав вводити з нового рядка. Для навчального завдання ще краще не запитувати користувача вводити сто чисел, а заповнити масив програмно випадковими числами: randomize; B[i,j]:= random(101)-50; (задає числа від -50 до 50) 4) for i:=2 to n do for j:=2 to n do Чому ти переглядаєш масив, починаючи з 2 рядка і 2-го стовпця??? Має бути for i:=1 to n do for j:=1 to n do 5) if B[i,j]<min then min:=B[i,j]; - ти порівнюєш елемент B[i,j] зі змінною min, а чОму вона рівна? Де ти задаєш її значення? 6) Ну і бажано вивести весь масив на екран, щоб користувач міг його бачити.
Ось виправлений варіант програми: Program pr4; uses crt; const n=10; var B:array[1..n,1..n] of integer; min,i,j:integer; begin; randomize; for i:=1 to n do begin for j:=1 to n do begin B[i,j]:=random(101)-50; write(B[i,j]:3, ' '); end; writeln; end; writeln; min:= B[1,1]; for i:=1 to n do for j:=1 to n do if B[i,j]<min then min:=B[i,j]; writeln('Найменший елемент масиву min=',min); end.
elenachuxina804
07.04.2021
Const n = 10; var mas :array [1..n] of integer; i, sum, a, k, sch :integer; begin writeln('Введите массив:'); for i:= 1 to n do readln(mas[i]); writeln('Введите число A:'); readln(a); writeln('Введите число k:'); readln(k); sum:= 0; for i:= 1 to n do if mas[i] mod 2 = 1 then sum:= sum + mas[i]; writeln('Сумма элементов равна ',sum); writeln('Индексы, значение элементов которых больше ',a,' :'); for i:= 1 to n do if mas[i] > a then write(i,' '); writeln; sch:= 0; for i:= 1 to n do if mas[i] mod k = 0 then sch:= 1; if sch = 1 then writeln('В массиве есть элементы, кратные ',k) else writeln('В массиве нет элементов, кратных ',k); for i:= 1 to n do if mas[i] mod 5 = 0 then begin mas[i]:= 0; break; end; end.
Ответить на вопрос
Поделитесь своими знаниями, ответьте на вопрос:
Білу және түсіну денгейлерін тезірек айтып жібересіздерма өтнем
1) Слово "двовимірний" означає, що масив є таблицею (з рядками і стовпцями), а не те, що його довжина =2 елементи.
Тому значення n (рядок const n=2;) краще замінити на щось быльше, хоча б 10.
2) У розділі var двовимірний масив описується так:
var B:array[1..n, 1..n] of integer;
(вважаємо масив квадратним)
3) Бажано підкоректувати за на ввід, тому що користувач бачить одне і те ж для кожного елемента:B[i]=
Потрібно написати так: write('B[',i,',',j,]=');
read ('B[i,j]); - тут зайва лапка, має бути так read (B[i,j]); і бажано замість read використати readln, щоб кожне нове число користувач мав вводити з нового рядка.
Для навчального завдання ще краще не запитувати користувача вводити сто чисел, а заповнити масив програмно випадковими числами:
randomize;
B[i,j]:= random(101)-50; (задає числа від -50 до 50)
4)
for i:=2 to n do
for j:=2 to n do
Чому ти переглядаєш масив, починаючи з 2 рядка і 2-го стовпця???
Має бути
for i:=1 to n do
for j:=1 to n do
5)
if B[i,j]<min then min:=B[i,j]; - ти порівнюєш елемент B[i,j] зі змінною min, а чОму вона рівна? Де ти задаєш її значення?
6) Ну і бажано вивести весь масив на екран, щоб користувач міг його бачити.
Ось виправлений варіант програми:
Program pr4;
uses crt;
const n=10;
var
B:array[1..n,1..n] of integer;
min,i,j:integer;
begin;
randomize;
for i:=1 to n do
begin
for j:=1 to n do
begin
B[i,j]:=random(101)-50;
write(B[i,j]:3, ' ');
end;
writeln;
end;
writeln;
min:= B[1,1];
for i:=1 to n do
for j:=1 to n do
if B[i,j]<min then min:=B[i,j];
writeln('Найменший елемент масиву min=',min);
end.