Перейти к содержимому

Как сравнить 3 числа в паскале

  • автор:

Програма паскаль нужно сравнить 3 числа и вывести наименьшее.

program abc;
var a1,a2,a3:integer;
begin
Write(‘Введите число a1 :’);
Read(a1);
Write(‘Введите число a2 :’);
Read(a2);
Write(‘Введите число a3 :’);
Read(a3);
if a1>a2 then Write(a1)
else Write(a2);
if a2>a3 then Write(a2)
else Write(a3);
if a3>a1 then Write(a3)
else Write(a1);

Начало есть а что дальше не могу придумать

Дополнен 11 лет назад
Она (программа) выводит решение из каждой if. Как это исправить.
Голосование за лучший ответ

Сравнивать нужно в цикле и после каждого введения числа. Тогда можно сравнивать не только 3 числа, а сколько угодно, обойдясь всего двумя переменными a1 и a2. Логика такая: получаем число (один раз) , заносим в а1. Далее в цикле: получаем число в a2, сравниваем с a1, если а2 меньше, то копируем значение в а1, а нет, то игнорируем. Возвращаемся на начало цикла нужное количество раз. Таким образом в а1 у нас всегда будет наименьшее число.

Могу сделать интересует пиши вличку

program abc;
var a1,a2,a3:integer;
begin
Write(‘Введите число a1 :’);
Read(a1);
Write(‘Введите число a2 :’);
Read(a2);
Write(‘Введите число a3 :’);
Read(a3);
if (a1 < a2) AND (a1 < a3)
then writeln(a1)
else if (a2 < a1) AND (a2 < a3)
then writeln(a2)
else writeln (a3);
end.

Сравнение чисел в паскале.

Как заставить паскаля (имеется ввиду язык программирования) сравнивать два числа с двумя другими. Например
.
if 1какой-то оператор
else
истчо оператор
.
Такая конструкция не работает. Вопрос заключается в том как заставить паскаль сравнивать числа подобным образом.

ArcticFox
03.11.08 19:26:28 MSK

Re: Сравнение чисел в паскале.

>Как заставить паскаля (имеется ввиду язык программирования) сравнивать два числа с двумя другими

Нужно не паскаль заставить, а тебя, неуча, заставить его выучить

anonymous
( 03.11.08 19:28:26 MSK )

Re: Сравнение чисел в паскале.

true
( 03.11.08 19:31:28 MSK )
Ответ на: Re: Сравнение чисел в паскале. от anonymous 03.11.08 19:28:26 MSK

Re: Сравнение чисел в паскале.

Ну да ладно, отвечу на твой вопрос 🙂
if A in [2..9] and B in [2..9]

anonymous
( 03.11.08 19:39:41 MSK )
Ответ на: Re: Сравнение чисел в паскале. от anonymous 03.11.08 19:39:41 MSK

Re: Сравнение чисел в паскале.

выражения «x in [..]» в круглые скобки надо, ИМХО

anonymous
( 03.11.08 19:43:52 MSK )

Re: Сравнение чисел в паскале.

if переменная 1 > переменная 2 then

Вроде бы так, хотя я за паскаль давно не брался 🙁

anonymous
( 03.11.08 19:53:17 MSK )

Re: Сравнение чисел в паскале.

if переменная 1 > переменная 2 then

Вроде бы так, хотя я за паскаль давно не брался 🙁

anonymous
( 03.11.08 19:54:06 MSK )

Re: Сравнение чисел в паскале.

madcore ★★★★★
( 03.11.08 19:55:49 MSK )

Как заставить школьника думать должным образом?

>Такая конструкция не работает. Вопрос заключается в том как заставить паскаль сравнивать числа подобным образом.

Такая конструкция действительно не работает. Задача кодера в том и состоит, чтобы на каком-то абстрактном языке, например Pascal, описать то, что он видит на другом языке, будь то русский или язык математических кванторов.

Camel ★★★★★
( 03.11.08 20:02:21 MSK )

Re: Сравнение чисел в паскале.

Это можно сделать за 3 операции сравнения.

soomrack ★★★★
( 03.11.08 20:15:20 MSK )
Ответ на: Как заставить школьника думать должным образом? от Camel 03.11.08 20:02:21 MSK

Re: Как заставить школьника думать должным образом?

Синтаксис вида (A in [1..10]) and (B in [1..10]) работает как надо.
Camel, я не школьник. Программирование мне нужно лишь для написания некоторых программ упрощающих жизнь, например считать среднеквадратичную погрешность, которую даже в maple считать замучаешься. А так как нормальной книги по которой можно учиться и где все растолковано на пальцах найти крайне сложно (не только по программированию, так со всеми науками) приходится каждый раз изобретать велосипеды (кстати так построена система образования в штатах и некоторых европейских странах, где студентов заставляют самим до всего доходить).

ArcticFox
( 03.11.08 20:26:08 MSK ) автор топика
Ответ на: Re: Как заставить школьника думать должным образом? от ArcticFox 03.11.08 20:26:08 MSK

Re: Как заставить школьника думать должным образом?

>Синтаксис вида (A in [1..10]) and (B in [1..10]) работает как надо.

Множества работают только с однобайтовыми типами.

Как сравнить 3 числа в паскале

Регистрация: 15.03.2009

Сообщений: 3

Помогите пожалуйста с программой сравнения 3 чисел на Pascal

Я знаю что это элементарно, но если завтра не принесу прогу, меня отчислят
Задача:
Даны 3 числа, найти и распечатать большее из них.

Регистрация: 15.03.2009

Сообщений: 3

народ, если нужно, заплачу.

Регистрация: 28.01.2009

Сообщений: 20,999

program Project1; var c1,c2,c3:integer; begin ReadLn(c1,c2,c3); if (c1>c2)and(c1>c3) then writeln(c1) else if (c2>c1)and(c2>c3) then writeln(c2) else writeln(c3); readln; end.

в общем вот

Хорошо поставленный вопрос это уже половина ответа. | Каков вопрос, таков ответ.
Программа делает то что написал программист, а не то что он хотел.
Функции/утилиты ждут в параметрах то что им надо, а не то что вы хотите.

Последний раз редактировалось Пепел Феникса; 22.06.2009 в 22:35 .

Пепел Феникса
Посмотреть профиль
Найти ещё сообщения от Пепел Феникса

Как ПРАВИЛЬНО сравнить 3 числа на Pascal?

Суть в том, что если ввести 2 МИФИТА, 2 ЕНО и 1 ФИЛФАК он выводит (Самый популярный МИФИТ). Т.е даже при ложном условии M > E (это не так, они равны) — он приступает к выполнению этого условия. Т.к внутри всё ложно он использует

else memo1.Lines.Add('Самый популярный МИФИТ ' + inttostr(m) + ' заявок')

Переменные m,e,f — первые буквы слов МИФИТ, ЕНО и ФИЛФАК. Если кто не поймёт

  • Вопрос задан более трёх лет назад
  • 393 просмотра

1 комментарий

Простой 1 комментарий

Добавить комментарий

Ваш адрес email не будет опубликован. Обязательные поля помечены *