|
|
Регистрация Восстановить пароль |
Регистрация | Задать вопрос |
Заплачу за решение |
Новые сообщения |
Сообщения за день |
Расширенный поиск |
Правила |
Всё прочитано |
|
Опции темы | Поиск в этой теме |
28.11.2017, 22:45 | #1 |
Регистрация: 21.11.2017
Сообщений: 9
|
Помогите пожалуйста с блок-схемой
type
zap = record fio: string[40]; Otmetka: array[1..5] of Byte; end; zap2 = record absolut: real; kacestvo: real; predmet: string; end; var s: array[1..20] of zap; v: array[1..20] of zap2; i, j, n: integer; UspevAbs, UspevKach : real; predmet: array[1..5] of string[15]; begin write ('Введите названия предметов '); for i:= 1 to 5 do begin writeln('введите ',i,'-й предмет: '); readLn(predmet[i]); end; write('Введите количество строк - '); readln(n); for i := 1 to n do begin write('ФИО - '); repeat readln(s[i].fio); if (length(s[i].fio) > 32) then writeln('ФИО должно быть не больше 32 символов!'); if (length(s[i].fio) < 1) then writeln('ФИО должно быть не пустой!'); until (length(s[i].fio)>=1) and (length(s[i].fio) <= 32); for j:= 1 to 5 do begin repeat write('введите оценку ',s[i].fio,' по предмету ',predmet[j],' '); readln(s[i].Otmetka[j]); if not ((s[i].Otmetka[j] >= 1) and (s[i].Otmetka[j] <= 5)) then writeln('Ошибка. Оценка должна быть 1,2,3,4 или 5'); until (s[i].Otmetka[j] >= 1) and (s[i].Otmetka[j] <= 5); end; end; writeln('┌───────────────────────── ──────────┬──────────────────────── ─────┐'); writeln('│ │ Оценка по предмету │'); writeln('│ ФИО студента ├─────┬─────┬─────┬─────┬───── ┤'); writeln('│ │ 1 │ 2 │ 3 │ 4 │ 5 │'); writeln('├──┬────────────────────── ──────────┼─────┼─────┼─────┼─────┼ ─────┤'); for i := 1 to n do begin write('│',i:2 , '│', s[i].fio:32, '│'); for j:=1 to 5 do Write( ' ',s[i].Otmetka[j]:3, ' │'); WriteLn; writeln('├──┼────────────────────── ──────────┼─────┼─────┼─────┼─────┼ ─────┤'); end; writeln('└──┴────────────────────── ──────────┴─────┴─────┴─────┴─────┴ ─────┘'); writeln('┌───────────────────────── ──────────┬──────────────────────── ─────┐'); writeln('│ │ Успеваемость % │'); writeln('│ Наименование предмета ├──────────────┬────────────── ┤'); writeln('│ │ абсолютная │ качественная │'); writeln('├──┬────────────────────── ──────────┼──────────────┼───────── ─────┤'); for j:=1 to 5 do begin UspevAbs := 0.0; UspevKach := 0.0; for i := 1 to n do begin if (s[i].Otmetka[j]=3) or (s[i].Otmetka[j]=4) or (s[i].Otmetka[j]=5) then UspevAbs := UspevAbs + 1; if (s[i].Otmetka[j]=4) or (s[i].Otmetka[j]=5) then UspevKach := UspevKach + 1; end; v[i].predmet := predmet[j]; UspevAbs := UspevAbs * 100 / n; v[i].absolut:=UspevAbs; UspevKach := UspevKach * 100 / n; v[i].kacestvo := UspevKach; writeln('│', j:2 , '│', v[i].predmet:32, '│ ', v[i].absolut:12:1, ' │ ', v[i].kacestvo:12:1, ' │'); writeln('├──┼────────────────────── ──────────┼──────────────┼───────── ─────┤'); end; writeln('└──┴────────────────────── ──────────┴──────────────┴───────── ─────┘'); end. |
28.11.2017, 22:56 | #2 |
Старожил
Регистрация: 12.01.2011
Сообщений: 19,500
|
Вряд ли кто-то будет бесплатно рисовать за вас блок-схему.
Ушел с форума, https://www.programmersforum.rocks, alex.pantec@gmail.com, https://github.com/AlexP11223
ЛС отключены Аларом. |
28.11.2017, 23:15 | #3 | |
Старожил
Регистрация: 16.05.2012
Сообщений: 3,211
|
Цитата:
Начал решать проблему с помощью регулярных выражений. Теперь решаю две проблемы...
|
|
Похожие темы | ||||
Тема | Автор | Раздел | Ответов | Последнее сообщение |
ПОМОГИТЕ ПОЖАЛУЙСТА С БЛОК-СХЕМОЙ! | Вероник блок-схема | Помощь студентам | 0 | 23.12.2013 14:54 |
Помогите пожалуйста с блок-схемой | Megabolt | Помощь студентам | 16 | 14.11.2009 15:58 |