Новые сообщения · Правила  
  • Страница 1 из 1
  • 1
Модератор форума: Berestovskiy  
Программка в Паскале
Задача: составьте программу нахождения наибольшего среди тех элементов одновременного массива А(N) что лежат в интервале (C,D)
var
N:byte;
A:array[1..10] of integer;
C,D,X,y,h: integer;
Begin
For N:= 1 to 10 do
readln(a[N]);
writeln('vvedite dva chisla');
readln (C,d);
If C<D then x:=c
else y:=c;
If D<C then x:=D
else y:=D;
h:=A[1];
for N:= 1 to 10 do
If(A[N]>x) or (A[N]<y) and
(A[n]>h)
then h:=A[N];
writeln ('otvet ', h)
end.

В чем ошибка данной программы? Объясните, что делает каждый массив. А другую программку я составить вообще не сумел: Составить программу подсчета отрицательных элементов двухмерного массива A(N,M) кратных 3
1 | Автор: alexcandr831 | 2012-02-09, 18:10   |  Репутация: [ + 0 ]
Держи)

var
i,n,c,d,a,p:integer;
begin
readln(n);
read(c,d);
for i:=1 to n do begin
read(a);
if (a>=c)and(a<=d) then
if a>p then p:=a;end;
writeln(p);
end.


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
2 | Автор: Berestovskiy | 2012-02-09, 18:13   |  Репутация: [ + 211 ]


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
2 | Автор: Berestovskiy | 2012-02-09, 18:13   |  Репутация: [ + 211 ]
А вторую программку: Составить программу подсчета отрицательных элементов двухмерного массива A(N,M) кратных 3
3 | Автор: alexcandr831 | 2012-02-09, 18:15   |  Репутация: [ + 0 ]
var
a:array[1..100,1..100]of integer;
i,j,n,m,s,q:integer;
begin
read(n,m);
s:=0;q:=0;
for i:=1 to n do
for j:=1 to m do begin
read(a[i,j]);
if a[i,j]<0 then
if a[i,j]mod 3=0 then begin s:=s+a[i,j];q:=q+1;end;end;
writeln('summa otricatel`nuh 4isel = ',s);
write('kol-vo otricatel`nuh 4usel = ',q);
end.


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
4 | Автор: Berestovskiy | 2012-02-09, 18:20   |  Репутация: [ + 211 ]
Мне нужно только 10 чисел, значит нужно a:array[1..10,1..10]of integer; или нет?
5 | Автор: alexcandr831 | 2012-02-09, 18:21   |  Репутация: [ + 0 ]
Проще будет так даже:
Если за ранее не известно кол-во строк и столбцов, то нужно добавить переменные n и m.
Вот даже немного переделаный мой предыдущий код

var
a,i,j,s,q:integer;
begin
s:=0;q:=0;
for i:=1 to 10 do
for j:=1 to 10 do begin
read(a);
if a<0 then
if a mod 3=0 then begin s:=s+a;q:=q+1;end;end;
writeln('summa otricatel`nuh 4isel = ',s);
write('kol-vo otricatel`nuh 4usel = ',q);
end.


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
6 | Автор: Berestovskiy | 2012-02-09, 18:25   |  Репутация: [ + 211 ]
А сколько оно чисел будет запрашивать?
7 | Автор: alexcandr831 | 2012-02-09, 18:31   |  Репутация: [ + 0 ]
В последнем коде который я написал - числа запрашивать не будет, ты ведь сам сказал, что тебе нужно 10 чисел..
Если нужно что-бы числа запрашиало, то добавь в переменные ещё n,m и поменяй немного цикл:

read(n,m);
for i:=1 to n do
for j:=1 to m do begin


Нужна помощь? Сюда: vkontakte.ru/berestovskiy
8 | Автор: Berestovskiy | 2012-02-09, 18:35   |  Репутация: [ + 211 ]
  • Страница 1 из 1
  • 1
Поиск: