![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
Элис |
![]()
Сообщение
#1
|
Гость ![]() |
Собственно - простейшая задача: есть три целых числа и надо найти среднее из них, то есть то, которое больше одного числа и меньше другого. все числа считаем разными.
Мне это дело пока с трудом дается, ну алгоритмы всякие и вот какой у меня родился код: if (x > y) or (x > z) then if(x < y) or (x < z) then writeln(x) else if (y > z) then writeln(y) else writeln(z) else if (y > z) then writeln(z) else writeln(y); Вроде работает правильно, при любых комбинациях чисел. Но у меня сомнения собственно по алгоритму - может быть можно сделать как-то проще, короче, красивее, может у меня запутанный и непонятный способ, а есть гораздо более просто, но я его не вижу... |
kent |
![]()
Сообщение
#2
|
![]() Пионер ![]() ![]() Группа: Пользователи Сообщений: 50 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
если число целое, можно вот так:
|
Fang |
![]()
Сообщение
#3
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 48 Пол: Мужской Реальное имя: Fang Репутация: ![]() ![]() ![]() |
У меня вот так получилось:
Код if (a > b) and (a < c) then writeln(a) else if (b > a) and (b < c) then writeln(b) else writeln(c); Вроде как проще, да и кода поменьше. |
klem4 |
![]()
Сообщение
#4
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Fang, а ты уверен что твоя программа правильно работает
![]() попробуй например a=1 b=0 c=-1 ? Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
klem4 |
![]()
Сообщение
#5
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Вот так будет привильно :
Код uses crt; var a,b,c : integer; Begin clrscr; readln(a); readln(b); readln(c); writeln; if ((a > b) and (a < c)) or ((a > c) and (a < b)) then writeln(a) else if ((b > a) and (b < c)) or ((b > c) and (b < a)) then writeln(b) else writeln(c); readln; end. Сообщение отредактировано: klem4 - -------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
Fang |
![]()
Сообщение
#6
|
![]() Новичок ![]() Группа: Пользователи Сообщений: 48 Пол: Мужской Реальное имя: Fang Репутация: ![]() ![]() ![]() |
Цитата(klem4 @ 8.10.2005 9:23) Fang, а ты уверен что твоя программа правильно работает ![]() попробуй например a=1 b=0 c=-1 ? Точно! Спасибо! |
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Как вариант:
function min(a, b: integer): integer; |
APAL |
![]()
Сообщение
#8
|
![]() Смотрю... ![]() ![]() ![]() ![]() ![]() Группа: Пользователи Сообщений: 1 055 Пол: Мужской Реальное имя: Пшеничный Алексей Анатольевич Репутация: ![]() ![]() ![]() |
Еще вариант - с массивом.
For i:=1 to 2 do -------------------- |
![]() ![]() |
![]() |
Текстовая версия | 1.09.2025 18:14 |