21.05.2019 sdamgia ru/test? id=76026вариант n9 76026151. 3 n9 1157между населёнными пунктами а, в, с, d построены дороги, протяженность которых (вкилометрах) в таблице.і7seatsideопределите длину кратчайшего пути между пунктами дис. передвигаться можно только подорогам, протяжённость которых указана в таблице.1) 42) 53) 62. з no 424между населёнными пунктами a, b, c, d, e, f построены дороги, протяжённость которых -дена в таблице:
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.
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.