Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 16.04.2010, 23:13   #1
lilia2121
в раздумьях
Пользователь
 
Аватар для lilia2121
 
Регистрация: 29.03.2010
Сообщений: 25
По умолчанию найти ошибку в массиве

Решила задачу, а программа не идёт.. помогите пожалуйста найти ошибку
Код:
program uu;
type mas=array[1..10] of integer;
var A: mas;
imin, min, i, imax, max: integer;
begin
clrscr;
randomize;
min:=A[1]; imin:=1;
for:=2 to 10 do random(10);
if A[i]<min then
begin min:=A[i]; imin:=i;
end;
randomize;
max:=A[1];
imax:=1;
for i:=2 to10 do random(10);
if A[i]>max then;
begin 
max:=A[i];
imin:=i;
end;
if min=10 else 
writeln('i=';imin);
writeln('min=',min);
if max=10 else
writeln('i=';imax);
writeln('max=';max);
readkey;
end.
условие задачи: Дан массив А(10) целых чисел. Найти минимальный и максимальный элементы этого массива. Если они не равны 10
вывести на экран значения этих элементов и их порядковый номер в массиве.

Последний раз редактировалось Stilet; 17.04.2010 в 13:17.
lilia2121 вне форума Ответить с цитированием
Старый 16.04.2010, 23:29   #2
[CODER]
Форумчанин
 
Аватар для [CODER]
 
Регистрация: 02.02.2010
Сообщений: 305
По умолчанию

Инициализировать A[i] нужно примерно так
Код:
randomize;
for i:=2 to 10 do 
  begin 
      A[i]:=random(10)+1;
  end;
Skype: CODERua
[CODER] вне форума Ответить с цитированием
Старый 16.04.2010, 23:51   #3
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

Да там вообще бред написан.
Код:
program mas;
uses crt;
const n=10;
var
A:array [1..n] of integer;
i,j,max,min,imn,imx:integer;
BEGIN
clrscr;
randomize;
imn:=1;
imx:=1;
for i:=1 to n do
begin
a[i]:=random (12);
write (a[i], ' ');
end;
max:=a[1];
for i:=1 to n do
if a[i]>max then
begin
max:=a[i];
 imx:=i;
 end;
min:=a[1];
for i:=1 to n do
if a[i]<min then
begin
min:=a[i];
imn:=i;
end;
writeln;
iF (max<>10) and (min<>10) then
write('MAX элемент массива и его индекс:':60, max,' ',imx
,'MIN элемент массива и его индекс: ':77, min,' ',imn)
else
writeln('MAX И MIN РАВНЫ 10!!!!!':55);
end.
にんじゃ

Последний раз редактировалось ROMA2PVT; 17.04.2010 в 00:06.
ROMA2PVT вне форума Ответить с цитированием
Старый 17.04.2010, 09:17   #4
lilia2121
в раздумьях
Пользователь
 
Аватар для lilia2121
 
Регистрация: 29.03.2010
Сообщений: 25
По умолчанию

но мне же вроде не нужно выводить что минимум и максимум равны 10
lilia2121 вне форума Ответить с цитированием
Старый 17.04.2010, 12:22   #5
ROMA2PVT
ТАМБОВСКИЙ ВОЛК.
Участник клуба
 
Аватар для ROMA2PVT
 
Регистрация: 16.03.2010
Сообщений: 1,354
По умолчанию

Цитата:
Если они не равны 10
вывести на экран значения этих элементов и их порядковый номер в массиве.
Читай внимательней что написано.Попробуй запустить прогу и посмотри что будет когда максимум будет равен 10.ПРОГА ВЫВЕДЕТ СООБЩЕНИЕ ЧТО МАКСИМУМ И МИН РАВНЫ 10!!!!!

Код:
iF (max<>10) then
writeln('MAX элемент массива и его индекс:', max,' ',imx)
else
writeln('MAX РАВЕН 10!!!!!');
iF (min<>10) then
writeln('MIN элемент массива и его индекс: ', min,' ',imn)
else
writeln('MIN РАВЕН 10!!!!!');
end.
Либо вот так если надо сделай проверку.
にんじゃ

Последний раз редактировалось Stilet; 17.04.2010 в 13:18.
ROMA2PVT вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
найти ошибку в массиве, паскаль bingooo Помощь студентам 2 09.04.2010 19:12
Найдите ошибку в массиве Nataly1992 Помощь студентам 1 20.12.2009 19:21
Найти 2 ближайших ел-та в массиве neon2k Помощь студентам 3 08.01.2009 02:50
Как найти проиизведение в одномерном массиве? kitty Помощь студентам 10 30.11.2007 20:30