Другие языки программирования и технологии

Помогите пожалуйста составить программу на Паскале, используя оператор case

Дан список дисциплин, изучаемых в ПТУ и отчетность по ним .Составить программу, которая бы по названию дисциплины выдавала бы отчетность по нему.

История (экзамен, зачет)

Культурология (зачет)

Философия (экзамен, зачет)

Иностранный язык (экзамен, зачет)

Экономика (экзамен)
Hhh Hhh
Hhh Hhh
1 096
1) определяешь свой тип - дисциплину.
2) потом уже используешь этот тип для case
case переменная_типа_дисциплина of
тип_история: вывод отчетности по истории;
тип_культурология: вывод отчетности по культурологии;
и т. д.
end;

если грубо, то так. есть куча нюансов по твоим типам данных и откуда брать эти отчеты. но ты сам их додумаешь.
Я1
Я 100%
22 439
Лучший ответ
может быть эта программа тебе поможет
program
ernar ;

uses
graphABC,crt;

Var
V1,V2,S,Summ,T,D:Real; a:integer;

procedure
title ;

begin

textBackGround(white);

Textcolor(blue);

SetWindowHeight(500);

SetWindowWidth(800);

SetFontColor(clGreen);

SetFontSize(10);

gotoxy(11,3);

writeln('Назарбаевская Интеллектуальная школа ХБН города Павлодар');

gotoxy(11,4);

writeln('Тема проекта: "Вычиcления физических задач на встречные движения"');

gotoxy(29,12);

writeln('Выполнил: ученик 8"б" класса Тиынтаев Ернар ');

gotoxy(29,13);

writeln('Проверила: Ермекова А. А');

gotoxy(50,20);

writeln(' нажмите на enter');

end;

procedure
menu ;

begin

clrscr;

writeln('Выберите пункт ');

writeln('1 Находит расстояние через формулу S=T*(V1+V2)+D');

writeln('2 Находит время через формулу T=(S-D)/(V1+V2)');

writeln('3 Находит скорость первого автомобиля через формулу V1=(S-D-V2*T)/T');

writeln('4 Находит скорость второго автомобиля через формулу V2=(S-D-V1*T)/T');

writeln('5 Находит расстояние между двумя объектами через формулу D=S-(V1+V2)T');

writeln('6 Выход из Паскаля');

write('Выберите нужный пункт => ');

end;
procedure perv ;

begin

Write('введите скорость первого автомобиля: км/час --> ');

Readln(V1);

Write('введите скороcть второго автомобиля :км/час --> ');

Readln(V2);

Write('введите время проехавших автомобилей : час --> ');

Readln(T);

write('введите расстояние между двумя объектами :км --> ');

readln(D);

Summ:=T*(V1 + V2)+D;

Writeln('расстояние равно : ',Summ:3:2,'км');
Readln;
end;

procedure vtor ;
label 1;
begin

Writeln('введите скорость первого автомобиля: км/час ');

Readln(V1);

Writeln('введите скороcть второго автомобиля :км/час');

Readln(V2);

Writeln('введите расстояние между двумя объектами : км ');

Readln(D);

writeln('введите расстояние: км');

readln(S);

if s<=d then begin writeln('Ошибка в исходных данных s<=d ');
goto 1; end;
Summ:=(S-D)/(V1 + V2);

Writeln('время равно : ',Summ:3:2,'час');
1: readln;
end;

procedure tret ;
label 1;
begin

Writeln('введите время');

Readln(T);

Writeln('введите скороcть второго автомобиля :км/час');

Readln(V2);

Writeln('введите расстояние между автомобилями : км ');

Readln(D);

writeln('введите расстояние :км');

readln(S);

Summ:=(S-D-V2*T)/T;
if (S-D-V2*T)<0 then begin writeln('Ошибка в исходных данных (S-D-V2*T)<0 ');
goto 1; end;

Writeln('скорость первого автомобиля равно: ',Summ:3:2,'км/час');
1: Readln;
end;

procedure chet ;
label 1;
begin

Writeln('введите время');

Readln(T);

Writeln('введите скорость первого автомобиля :км/час');

Readln(V1);

Writeln('введите расстояние между автомобилями : км ');

Readln(D);

writeln('введите расстояние: км');

readln(s);

Summ:= (S-D-V1*T)/T;
if (S-D-V1*T)<0 then begin writeln('Ошибка в исходных данных (S-D-V1*T)<0 ');
goto 1; end;
Writeln('скорость второго человека равно: ',Summ:3:2,'км/час');
1: Readln;
end;

procedure pat ;
label 1;
begin

Writeln('введите время');

Readln(T);

Writeln('введите скорость первого автомобиля :км/час');

Readln(V1);

Writeln('введите скорость второго автомобиля : км ');

Readln(V2);

writeln('введите расстояние: км');

readln(s);

Summ:=S-(V1+V2)*T;
if S-(V1+V2)*T<0 then begin writeln('Ошибка в исходных данных S-(V1+V2)*T<0 ');
goto 1; end;

Writeln('расстояние между автомобилями: ',Summ:3:2,'км');
1: Readln;
end;

begin
//clrscr;
title;

readln;

repeat

menu;

readln(a);

case a of

1:perv ;

2:vtor;

3:tret;

4:chet;

5:pat;

6:exit ;

end ;

until a=6;

readln;

end.