![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
asder |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Репутация: ![]() ![]() ![]() |
Приветствую! Помогите решить простую задачу на паскале:
"Даны N целых чисел. Найти и вывести на экран минимальное среди нечётных чисел." |
DarkWishmaster |
![]()
Сообщение
#2
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: ![]() ![]() ![]() |
|
asder |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Репутация: ![]() ![]() ![]() |
Напишите, как эту задачу оформить в самом паскале
|
DarkWishmaster |
![]()
Сообщение
#4
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: ![]() ![]() ![]() |
Напишите, как эту задачу оформить в самом паскале
Uses Crt;
var N,min,number:integer;
Begin
write('N= ');
readln(n);
writeln('Insert ',N,' numbers: ');
min:=MaxInt;
while n>0 do
begin
readln(number);
if odd(number) then
if number<min then min:=number;
dec(n);
end;
writeln(Min);
readln;
end.
|
asder |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 4 Пол: Мужской Репутация: ![]() ![]() ![]() |
DarkWishmaster большое спасибо! Выручили!
![]() |
Lapp |
![]()
Сообщение
#6
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
DarkWishmaster, три вопросика к тебе. Сумеешь правильно ответить - ставлю + в репу без разговоров (за помощь новичкам)). Первые два вопроса - в комменетах:
Uses Crt; // зачем тут эта строка?
var N,min,number:integer;
Begin
write('N= ');
readln(n);
writeln('Insert ',N,' numbers: ');
min:=MaxInt;
while n>0 do
begin
readln(number);
if odd(number) then // почему эта строка сдвинута?
if number<min then min:=number;
dec(n);
end;
writeln(Min);
readln;
end.
Последний вопрос такой: Что выведет твоя прога в таком случае: n=2 10 20 и в таком случае: n=2 10 32767 ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Krjuger |
![]()
Сообщение
#7
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
А можно я скажу
![]() ![]() Кстати его вроде пытались научить не использовать ЦРТ,когда он сам тут задавал вопросы. Сообщение отредактировано: Krjuger - |
DarkWishmaster |
![]()
Сообщение
#8
|
![]() Бывалый ![]() ![]() ![]() Группа: Пользователи Сообщений: 168 Пол: Мужской Репутация: ![]() ![]() ![]() |
DarkWishmaster, три вопросика к тебе. Сумеешь правильно ответить - ставлю + в репу без разговоров (за помощь новичкам)). Первые два вопроса - в комменетах: 1) Uses Crt обычно я всегда исп. потому что всегда исп. ClrScr, но тут забыл ) 2)Ну сдвинул потому что хотел подчеркнуть это строку 3)ага, промажка. Нужна переменая boolean чтоб всё исправить.
Uses Crt;
var N,min,number:integer; q:boolean;
Begin ClrScr;
write('N= ');
readln(n);
writeln('Insert ',N,' numbers: ');
min:=MaxInt;
q:=false;
while n>0 do
begin
readln(number);
if odd(number) then
if number<min then
begin
min:=number;
q:=true;
end;
dec(n);
end;
if q=true then writeln('min= ',min) else writeln('не существует такое число');
readln;
end.
|
Krjuger |
![]()
Сообщение
#9
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
А почему нельзя вообще обьединить эти 2 условия?)
if (odd(number)) and (number<min) then
....
Функциональность не страдает. Ведь никакие другие случаи не рассматриваются. |
Lapp |
![]()
Сообщение
#10
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Ответы, увы, требуют уточнений.. Даю тебе возможность это сделать )).
1) Uses Crt обычно я всегда исп. потому что всегда исп. ClrScr, но тут забыл ) А _зачем_ ты "всегда исп." ClrScr? Эт. треб. по усл.?Цитата 2)Ну сдвинул потому что хотел подчеркнуть это строку Сдвиг имеет вполне конкретный смысл. Нельзя вешать на торт табличку "горький" просто потому, что хочется пометить, что он сладкий, а таблички "сладкий" нету.. Хочется подчеркнуть - выдели комментариями, выдели пустыми строками снизу и сверху - но _не_сдвигом_.Цитата 3)ага, промажка. Нужна переменая boolean чтоб всё исправить.
Uses Crt;
var N,min,number:integer; q:boolean;
Begin ClrScr;
write('N= ');
readln(n);
writeln('Insert ',N,' numbers: ');
min:=MaxInt;
q:=false;
while n>0 do
begin
readln(number);
if odd(number) then
if number<min then
begin
min:=number;
q:=true;
end;
dec(n);
end;
if q=true then writeln('min= ',min) else writeln('не существует такое число'); // тут (Lapp)
readln;
end.
Вопрос: почему в той строке, которую я пометил, ты не написал так: if (true=((q=true)=true))=true then ...
- ? ![]() 2 Krjuger: я лично ничего не имею против разбиения условия на два оператора (для ясности или чтоб устранить неоднозначность полного/краткого вычисления логики при компиляции) -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
Krjuger |
![]()
Сообщение
#11
|
Профи ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 652 Пол: Мужской Реальное имя: Алексей Репутация: ![]() ![]() ![]() |
Цитата Вопрос: почему в той строке, которую я пометил, ты не написал так: if (true=((q=true)=true))=true then
...- ? Потому что слишком много букафФ ![]() |
IUnknown |
![]()
Сообщение
#12
|
![]() Гуру ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 013 Пол: Мужской Ада: Разработчик Embarcadero Delphi: Сторонник Free Pascal: Разработчик Репутация: ![]() ![]() ![]() |
DarkWishmaster, хочешь еще один совет? Если твоя программа что-то печатает - лучше, чтобы это было корректно. Вот ты вывел фразу "Не существует такое число"... Какое это число не существует? Озвучь, пожалуйста... Ах, ты имел в виду "Не было введено нечетных чисел"... Так и пиши...
|
Lapp |
![]()
Сообщение
#13
|
![]() Уникум ![]() ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 6 823 Пол: Мужской Реальное имя: Лопáрь (Андрей) Репутация: ![]() ![]() ![]() |
Потому что слишком много букафФ ![]() if not (q = false) and (true = not (1 = 2)) or not true then ..
))DarkWishmaster, хочешь еще один совет? Если твоя программа что-то печатает - лучше, чтобы это было корректно. Вот ты вывел фразу "Не существует такое число"... Какое это число не существует? Озвучь, пожалуйста... Ах, ты имел в виду "Не было введено нечетных чисел"... Так и пиши... Присоединяюсь, совершенно согласен ![]() -------------------- я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой |
![]() ![]() |
![]() |
Текстовая версия | 21.04.2025 11:34 |