IPB
ЛогинПароль:

> Прочтите прежде чем задавать вопрос!

1. Заголовок темы должен быть информативным. В противном случае тема удаляется ...
2. Все тексты программ должны помещаться в теги [code=pas] ... [/code], либо быть опубликованы на нашем PasteBin в режиме вечного хранения.
3. Прежде чем задавать вопрос, см. "FAQ", если там не нашли ответа, воспользуйтесь ПОИСКОМ, возможно такую задачу уже решали!
4. Не предлагайте свои решения на других языках, кроме Паскаля (исключение - только с согласия модератора).
5. НЕ используйте форум для личного общения, все что не относится к обсуждению темы - на PM!
6. Одна тема - один вопрос (задача)
7. Проверяйте программы перед тем, как разместить их на форуме!!!
8. Спрашивайте и отвечайте четко и по существу!!!

> Файлы
сообщение
Сообщение #1


Гость






Помогите!!! переделать задачу.

Вот условия:
Составить программу назначения степендиии студентам по результатам сессии
используя следующие правила.

1) Если все оценки 5 назначается повышенная степендия
2) Если все оценки 4 и 5 назначается обычная степендия
3) Еслиоцени 3 стипендия не назначается

В результате работы программы должен быть напечатат список с оценкой
и средним баллом каждого студента
Во втором списке фамилии (назначенные на повышенную и обычную стипендию)



program stude;
uses crt;
type
student=record
kod:byte;
fam:string[20];
im:string[10];
ot:string[15];
gr:string[6];
kurs:byte;
m:array[1..5] of byte;
end;
var
m:array[1..5] of byte;
ysp:integer;
i:byte;
fstud:file of student;
rab:student;
flag:boolean;
fio:string[25];
key:0..4;
procedure vvod; {Ввод данных с клавиатуры}
begin
clrscr;
with rab do
begin
write('Фамилия: ');
readln(fam);
if fam='9999' then exit;
write('Имя: ');
readln(im);
write('Отчество: ');
readln(ot);
write('Группа: ');
readln(gr);
write('Курс: ');
readln(kurs);
write('Успеваемость: ');
readln(m[1],m[2],m[3],m[4],m[5]);
kod:=i;
end {with}
end; {vvod}
procedure vivod; {Ввывод на экран­}
begin
with rab do
begin
fio:=fam+' '+im[1]+' '+ot[1]+' ';
write(kod:4,fio:18);
writeln(gr:8,kurs:8,m[1]:8,m[2]:2,m[3]:2,m[4]:2,m[5]:2);
end
end;
procedure form; {формировать массив}
begin
rewrite(fstud);
i:=1;
vvod;
while rab.fam<>'9999' do
begin
write(fstud,rab);
i:=i+1;
vvod
end;
close(fstud)
end;
procedure print; {Печать}
begin
reset(fstud);
writeln('-----------------------------------------------------------------------------------');
writeln('I № I Фио I Группа  I Курс I Успеваемость I Степендия I Ср. бал');
writeln('-----------------------------------------------------------------------------------');
while not eof (fstud) do
begin
read(fstud,rab);
vivod
end ;
writeln('-----------------------------------------------------------------------------------');
readkey;
close(fstud)
end;
procedure print2; {Печать}
begin
reset(fstud);
writeln('------------------------------------------------------------');
writeln('I Повышенная степендия I Обычная степендия ');
writeln('------------------------------------------------------------');
while not eof (fstud) do
begin
read(fstud,rab);
with rab do
if (m[1]=2)or(m[2]=2)or(m[3]=2)or(m[4]=2)or(m[5]=2)then vivod;
end ;
writeln('------------------------------------------------------------');
readkey;
close(fstud)
end;
begin
flag:=false;
assign(fstud,'Студенты');
repeat
clrscr;
writeln('Выберите пункт меню');
writeln;
writeln('1-Формировать массив');
writeln('2-Печать всего массива');
writeln('3-Печать на повышен. и обычн. степендию');
writeln('0-выход');
readln(key);
case key of
1:form;
2:print;
3:print2;
0:flag:=true
end;
until flag;
end.

 К началу страницы 
+ Ответить 
 
 Ответить  Открыть новую тему 
Ответов
сообщение
Сообщение #2


Гость






Этот код который я дал записывает такие данные

Фамилия
Имя
Отчество
Группа
Курс
Успеваемость

Затем Выводит всех студентов и Всех доишников

Мне нужно чтобы она еще
находила среднюю оценку и какая будет степендия
Затем выводила всех студентов и студентов с повышенной и обычной степендией.
 К началу страницы 
+ Ответить 

Сообщений в этой теме


 Ответить  Открыть новую тему 
1 чел. читают эту тему (гостей: 1, скрытых пользователей: 0)
Пользователей: 0

 





- Текстовая версия 6.11.2025 23:20
500Gb HDD, 6Gb RAM, 2 Cores, 7 EUR в месяц — такие хостинги правда бывают
Связь с администрацией: bu_gen в домене octagram.name