![]() |
1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code].
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!
![]() ![]() |
![]() |
maq |
![]()
Сообщение
#1
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
Ребят, помогите полегче решить задачу, а то фигня какая-то получается...
![]() Даны действит. числа a,b,c,d Разраб. программу, кот. сравнивает эти числа - Если a<=b<=c<=d, то наименьшее число заменить наибольшим из них - Если a>b>c>d, то числа оставить без изменений, а иначе наибольшее заменить наименьшим. Интересует в общем только вторая часть. Спасибо заранее. |
klem4 |
![]()
Сообщение
#2
|
![]() Perl. Just code it! ![]() ![]() ![]() ![]() ![]() ![]() Группа: Модераторы Сообщений: 4 100 Пол: Мужской Реальное имя: Андрей Репутация: ![]() ![]() ![]() |
Ты бы показал свою фигню, мы бы поправили, а вообще я бы хранил 4 числа в массиве, так как нам надо будет запмнить номера, где располагаются макс. и мин. элементы. Алгоритм значит такой : Ищешь в массиве номера максимального и минимального элементов, запоминаешь их, потом проверяешь для массивов свои условия : Если массив образует неубывающую последовательность, то x[imin] := x[imax], иначе если последовательность возпрастающая, то оставить числа без зименений, иначе x[imax] := x[imin];
-------------------- perl -e 'print for (map{chr(hex)}("4861707079204E6577205965617221"=~/(.{2})/g)), "\n";'
|
maq |
![]()
Сообщение
#3
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
klem4, спасибо за ответ!
Вот написал, но сдается мне, что что-то не сходится ![]() Код program la; uses crt; var k:array[1..4] of integer; i,tmp1,tmp2,imax,imin:integer; begin; clrscr; writeln('Vvedite a b c d:'); readln(k[1],k[2],k[3],k[4]); if (k[1]<=k[2]) and (k[2]<=k[3]) and (k[3]<=k[4]) then k[1]:=k[4]; if (k[1]>k[2]) and (k[2]>k[3]) and (k[3]>k[4]) then else begin; tmp1:=K[1]; tmp2:=k[1]; for i:=2 to 4 do begin if k[i]>tmp1 then begin imax:=i; tmp1:=k[i]; end; if k[i]<tmp2 then begin imin:=i; tmp2:=k[i]; end; end; k[imax]:=k[imin]; end; write('a=',k[1],'b=',k[2],'c=',k[3],'d=',k[4]); readkey; end. буду благодарен, если кто поможет ![]() |
volvo |
![]()
Сообщение
#4
|
Гость ![]() |
![]() Так нельзя? program la; |
maq |
![]()
Сообщение
#5
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
volvo, не к сож. так не получится т.к.:
Код Vvedite a b c d: 1 6 3 5 a=1 b=6 c=3 d=1 Не определяется максимальное число... Но все равно спасибо за ответ%) Кстати в программе, которую я написал прикол еще лучше: Код Vvedite a b c d: 1 6 2 9 a=1 b=6 c=2 d=69 Не пойму, в чем ошибка... ![]() |
volvo |
![]()
Сообщение
#6
|
Гость ![]() |
maq, ты свое же задание ВНИМАТЕЛЬНО читал? Что по-твоему должно произойти если
Цитата Vvedite a b c d: 1 6 2 9 ?Все, понял... Сделаем ![]() |
volvo |
![]()
Сообщение
#7
|
Гость ![]() |
Вот так (кстати, этот алгоритм и предлагал во втором посте klem4
![]() program la; |
maq |
![]()
Сообщение
#8
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
volvo, я это задание наизусть уже выучил
![]() Но ведь нужно наибольшее заменить наименьшим, а тут так не получается... ![]() [добавлено] поздно запостил, но все же... [/добавлено] Сообщение отредактировано: maq - 13.03.2006 21:22 |
maq |
![]()
Сообщение
#9
|
Группа: Пользователи Сообщений: 7 Пол: Мужской Репутация: ![]() ![]() ![]() |
volvo, спасибо за программу! Все работает!
![]() Я тоже примерно так сделать хотел, но почему-то решил находить min&max в конце. И вообще с ошибкой получилось. Спасибо за помощь! ![]() Сообщение отредактировано: maq - 13.03.2006 21:36 |
![]() ![]() |
![]() |
Текстовая версия | 19.07.2025 23:10 |