Помогите расписать задачу, пожалуйста
Ввести последовательно возраст Антона, Бориса и Виктора. Определить, кто из них старше.
Пример:
Возраст Антона: 15
Возраст Бориса: 17
Возраст Виктора: 16
Ответ: Борис старше всех.
Пример:
Возраст Антона: 17
Возраст Бориса: 17
Возраст Виктора: 16
Ответ: Антон и Борис старше Виктора.
Домашние задания: Информатика
Информатика 10 класс Pascal
Только не написано, что делать, если все одного возраста. Шизофреники задачи ставят, в трёх величинах путаются, мышление дырявое, как дуршлаг.
Принцип работы простой: сначала сортируем пузырьком по убыванию возраста, затем остаётся 3 случая: первый старше второго (и автоматически - третьего), все равны по возрасту, и первые два равны, а третий младше.
program AgeComparison;
type
Person = record
n: string;
age: integer
end;
var
pers: array[1..3] of Person;
procedure swap(var a, b: Person);
var
t: Person;
begin
t := a; a := b; b := t;
end;
begin
pers[1].n := 'Антон';
pers[2].n := 'Борис';
pers[3].n := 'Виктор';
write('Введите возраст Антона, Бориса и Виктора в целых числах: ');
readln(pers[1].age, pers[2].age, pers[3].age);
if pers[1].age < pers[2].age then swap(pers[1], pers[2]);
if pers[2].age < pers[3].age then swap(pers[2], pers[3]);
if pers[1].age < pers[2].age then swap(pers[1], pers[2]);
if pers[1].age > pers[2].age then
writeln(pers[1].n, ' старше всех')
else if pers[2].age = pers[3].age then
writeln('Все одного возраста')
else
writeln(pers[1].n, ' и ', pers[2].n, ' старше ', pers[3].n, 'а')
end.
Принцип работы простой: сначала сортируем пузырьком по убыванию возраста, затем остаётся 3 случая: первый старше второго (и автоматически - третьего), все равны по возрасту, и первые два равны, а третий младше.
Ирина
Спасибо)
Program Vozrast;
uses crt;
var a, b, v: real;
begin
clrscr;
writeln ('Введите возраст (только сами числа, например 20, если человеку 20 лет) людей поочередно. После ввода каждого числа нажимайте клавишу Enter. При вводе дробных значений целую часть от дробной отделяйте точкой, а не запятой.');
write ('Введите возраст Антона: ');
readln (a);
if a130 then writeln ('Эй, полегче! Люди столько не живут (к сожалению)!') else begin
write ('Введите возраст Бориса: ');
readln (b);
if b130 then writeln ('Эй, полегче! Люди столько не живут (к сожалению)!') else begin
write ('Введите возраст Виктора: ');
readln (v);
if v130 then writeln ('Эй, полегче! Люди столько не живут (к сожалению)!') else begin
if (a=b) and (a=v) then writeln ('Антон, Борис и Виктор - ровесники.') else
if (a>b) and (a>v) then writeln ('Антон старше всех.') else
if (b>a) and (b>v) then writeln ('Борис старше всех.') else
if (v>a) and (v>b) then writeln ('Виктор старше всех.') else
if (a=b) and (a>v) then writeln ('Антон и Борис старше Виктора.') else
if (a=v) and (a>b) then writeln ('Антон и Виктор старше Бориса.') else
if (b=v) and (b>a) then writeln ('Борис и Виктор старше Антона.');
end;
end;
end;
write ('Программа завершена. Для выхода нажмите клавишу Enter.');
readkey;
end.
Похожие вопросы
- Информатика 10 класс
- Информатика 9 класс pascal(mod,div)
- Информатика 10 класс. Паскаль
- ИНФОРМАТИКА 10 КЛАСС
- Информатика 10 класс
- Информатика 10 класс Паскаль.
- Помогите пожалуйста!!! Информатика 10 класс Паскаль
- Срочно. Информатика 10 класс, написать программу
- Информатика 10 класс паскаль
- Информатика 10 класс