IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

 
 Ответить  Открыть новую тему 
> Минимум среди нечетных
сообщение
Сообщение #1





Группа: Пользователи
Сообщений: 4
Пол: Мужской

Репутация: -  0  +


Приветствую! Помогите решить простую задачу на паскале:
"Даны N целых чисел. Найти и вывести на экран минимальное среди нечётных чисел."
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #2


Бывалый
***

Группа: Пользователи
Сообщений: 168
Пол: Мужской

Репутация: -  3  +


Цитата(asder @ 16.06.2011 12:24) *

Приветствую! Помогите решить простую задачу на паскале:
"Даны N целых чисел. Найти и вывести на экран минимальное среди нечётных чисел."

И чем помочь? Что не понял? Где испытываешь трудности?
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #3





Группа: Пользователи
Сообщений: 4
Пол: Мужской

Репутация: -  0  +


Напишите, как эту задачу оформить в самом паскале
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #4


Бывалый
***

Группа: Пользователи
Сообщений: 168
Пол: Мужской

Репутация: -  3  +


Цитата(asder @ 16.06.2011 12:28) *

Напишите, как эту задачу оформить в самом паскале



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.


 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #5





Группа: Пользователи
Сообщений: 4
Пол: Мужской

Репутация: -  0  +


DarkWishmaster большое спасибо! Выручили! smile.gif
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #6


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


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
smile.gif


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #7


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


А можно я скажу smile.gif можно?))) lol.gif
Кстати его вроде пытались научить не использовать ЦРТ,когда он сам тут задавал вопросы.

Сообщение отредактировано: Krjuger -
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #8


Бывалый
***

Группа: Пользователи
Сообщений: 168
Пол: Мужской

Репутация: -  3  +


Цитата(Lapp @ 16.06.2011 22:39) *

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.


 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #9


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


А почему нельзя вообще обьединить эти 2 условия?)

if (odd(number)) and (number<min) then
....


Функциональность не страдает.
Ведь никакие другие случаи не рассматриваются.
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #10


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Ответы, увы, требуют уточнений.. Даю тебе возможность это сделать )).
Цитата(DarkWishmaster @ 17.06.2011 17:10) *
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 ...
- ? smile.gif

2 Krjuger: я лично ничего не имею против разбиения условия на два оператора (для ясности или чтоб устранить неоднозначность полного/краткого вычисления логики при компиляции)


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #11


Профи
****

Группа: Пользователи
Сообщений: 652
Пол: Мужской
Реальное имя: Алексей

Репутация: -  20  +


Цитата

Вопрос: почему в той строке, которую я пометил, ты не написал так:
if (true=((q=true)=true))=true then
...
- ?

Потому что слишком много букафФ lol.gif а еще вы забыли про true после true,ну про тот самый ,что после того true.(надеюсь никого это не обидит).
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #12


Гуру
*****

Группа: Пользователи
Сообщений: 1 013
Пол: Мужской
Ада: Разработчик
Embarcadero Delphi: Сторонник
Free Pascal: Разработчик

Репутация: -  627  +


DarkWishmaster, хочешь еще один совет? Если твоя программа что-то печатает - лучше, чтобы это было корректно. Вот ты вывел фразу "Не существует такое число"... Какое это число не существует? Озвучь, пожалуйста... Ах, ты имел в виду "Не было введено нечетных чисел"... Так и пиши...
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 
сообщение
Сообщение #13


Уникум
*******

Группа: Пользователи
Сообщений: 6 823
Пол: Мужской
Реальное имя: Лопáрь (Андрей)

Репутация: -  159  +


Цитата(Krjuger @ 18.06.2011 0:31) *
Потому что слишком много букафФ lol.gif а еще вы забыли про true после true,ну про тот самый ,что после того true.(надеюсь никого это не обидит).

if not (q = false) and (true = not (1 = 2)) or not true then ..
))

Цитата(IUnknown @ 18.06.2011 0:39) *
DarkWishmaster, хочешь еще один совет? Если твоя программа что-то печатает - лучше, чтобы это было корректно. Вот ты вывел фразу "Не существует такое число"... Какое это число не существует? Озвучь, пожалуйста... Ах, ты имел в виду "Не было введено нечетных чисел"... Так и пиши...
Присоединяюсь, совершенно согласен yes2.gif. Определение "такой" следует вообще запретить.. ))


--------------------
я - ветер, я северный холодный ветер
я час расставанья, я год возвращенья домой
 Оффлайн  Профиль  PM 
 К началу страницы 
+ Ответить 

 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 29.04.2024 12:28
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name