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

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

Вернуться   Форум программистов > Delphi программирование > Паскаль, Turbo Pascal, PascalABC.NET
Регистрация

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 09.01.2012, 12:29   #1
XYLIGAN72
Пользователь
 
Регистрация: 09.01.2012
Сообщений: 12
Вопрос Задача из гиа 2012!

Данная задача из ГИА 2012 №10 Поясните человеку почему в данной задаче получается 5

В таблице Dat хранятся данные измерений среднесуточной температуры за
неделю в градусах (Dat[1] – данные за понедельник, Dat[2] – за вторник и
т.д.). Определите, что будет напечатано в результате выполнения
следующего алгоритма, записанного на трех алгоритмических языках.
Я оставил только один!


Код:
Var k, m, day: integer;
Dat: array[1..7] of integer;
Begin
Dat[1]:=7; Dat[2]:=9;
Dat[3]:=10; Dat[4]:=8;
Dat[5]:=6; Dat[6]:=7;
Dat[7]:=6;
day:= 1; m:=Dat[1];
for k:=2 to 7 do begin
if Dat[k] < m then begin
m:=Dat[k]; day:=k
end
end;
write(day);
readln;
End.



Ответ: 5
XYLIGAN72 вне форума Ответить с цитированием
Старый 09.01.2012, 12:39   #2
Rin
Негодник
Форумчанин
 
Аватар для Rin
 
Регистрация: 10.11.2009
Сообщений: 880
По умолчанию

Тут в цикле у тебя нахождение минимума, минимальная температура была в 5 день.
Код:
for k:=2 to 7 do 
begin
if Dat[k] < m then // сравнение  "что меньше"
begin
m:=Dat[k]; // в М запишется температура дня
day:=k // в day запишется какой сегодня день недели
end
end;
а дальше мы выводим на экран день недели (day), а не min температуру (М).
Надеюсь, что понятно.
Если помог, проси поставить минус. Будь оригинален!
Rin вне форума Ответить с цитированием
Старый 09.01.2012, 12:40   #3
Alex11223
Старожил
 
Аватар для Alex11223
 
Регистрация: 12.01.2011
Сообщений: 19,500
По умолчанию

Ну дык в цикле ищется первый (т.е. тут 2 дня с минимальной (6) температура, но т.к. условие <, то выведется тот, который раньше, если бы было бы <=, то наоборот вывелся бы последний) день с минимальной температурой и выводится его номер.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом.
Alex11223 вне форума Ответить с цитированием
Старый 09.01.2012, 15:21   #4
XYLIGAN72
Пользователь
 
Регистрация: 09.01.2012
Сообщений: 12
По умолчанию

Спасибо огромное! Можете закрыть тему!
XYLIGAN72 вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
олимпиадные задачи 2011-2012 evgeniyvol Паскаль, Turbo Pascal, PascalABC.NET 3 08.12.2011 22:49