Форум программистов, компьютерный форум, киберфорум
Turbo Pascal
Войти
Регистрация
Восстановить пароль
Карта форума Темы раздела Блоги Сообщество Поиск Заказать работу  
 
50 / 50 / 39
Регистрация: 06.12.2011
Сообщений: 237
1

Записать в текстовый файл фамилию и имя студентов с повышенной стипендией

18.03.2012, 13:59. Показов 772. Ответов 0
Метки нет (Все метки)

Author24 — интернет-сервис помощи студентам
Записать в типизированный файл фамилию, имя , группу , 5 оценок и средний балл студентов. Вывести на экран и записать в разные файлы студентов которые получат простую стипендию, повышенную и тех кто не получит стипендию.
Как теперь переделать этот код, чтоб записать в текстовый файл студентов которые получат простую стипендию и Повышенную стипендию ?с клавиатуры надо ввести размер стипендии и коэффициент ( этот коэффициент умножаем на размер стипендии и получаем повышенную стипендию) если можно с комментариями чтоб было понятно... Заранее благодарю

Вот код программы:
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
program sss;
uses crt;
const n=5;
type usp=record
fio:string[50];
gr:string[10];
srb:real;
pr:array[1..10] of byte;
end;
f=file of usp;
var
fst,two,step,four:f;
st:usp;
i,p,k:integer;
v:char;
t:real;
procedure input;
begin
rewrite(fst);
repeat
writeln('Введите фамилию студента');
readln(st.fio);
if st.fio<>'*' then begin
writeln('Введите группу студента');
readln(st.gr);
for i:=1 to n do begin
writeln('Введите',i,' оценку');
readln(st.pr[i]);
end;
write(fst,st);
end;
 
until (st.fio)='*';
close(fst);
end;
 procedure output(var z:f);
 begin
reset(z);
WriteLn('|','Фамилия':10,'|','Пр№1':4,'|','Пр№2':4,'|','Пр№3':4,'|','Пр№4':4,'|','Пр№5':4,'|','Средний балл':10,'|','Группа':10);
while not eof(z) do begin
read(z,st);
write('|',st.fio:10,'|');
for i:=1 to n  do begin
write(st.pr[i]:4,'|');
end;
write(st.srb:10:2,'|');
write(st.gr:10,'|');
writeln;
 
 end;
 readln;
close(z);
end;
 
begin
clrscr;
 
{$I-}
assign(fst,'c:\v22-9873\f\stud.01');
assign(two,'c:\v22-9873\f\two.02');
assign(step,'c:\v22-9873\f\step.03');
assign(four,'c:\v22-9873\f\four.04');
reset(fst);
if ioresult<>0 then begin writeln('Файл не существует');
input
end
else  begin
close(fst);
writeln('Файл существует');
writeln('Заменяем y/n');
readln(v);
if v='y' then input;
end;
{$I-}
reset(fst);
rewrite(two);
rewrite(step);
rewrite(four);
while not eof(fst) do begin
read(fst,st);
t:=0;
for i:=1 to n do
t:=t+st.pr[i];
st.srb:=t/n;
 
        if st.srb<3 then   write(two,st);
 
 
                 seek(fst,(filepos(fst))-1);
                 write(fst,st);
                 k:=0;
                 for i:=1 to n do
                 if (st.pr[i]>3) and (st.srb<>5) then  k:=k+1;
                 if k=n then write(four,st);
                 if st.srb=5 then write(step,st);
                 if st.srb<4  then write(two,st);
 
                 end;
                       close(step);
                 close(fst);
                 close(two);
                 close(four);
                 writeln;
 
 
        writeln('ИСХОДНЫЙ');
        output(fst);
        writeln;
        clrscr;
        writeln('ТРОЕШНИКИ');
        output(two);
        writeln;
        writeln('Простая Стипендия');
        output(four);
        writeln;
        writeln('Повышенная стипендия');
        output(step);
        end.
Вот как должен выглядеть текстовый файл:


Cтуденты получающиe степендию
*# *Фамилия *Сумма * Подпись *
* 1* Дуров* 345.00*__________*
* 2* Ложков* 345.00*__________*
* 3* Петров* 345.00*__________*
*# *Фамилия *Сумма * Подпись *
* 4* Иванов* 690.00*__________*
Всего: 2760.00
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
18.03.2012, 13:59
Ответы с готовыми решениями:

Определить % студентов с нормальной стипендией и % студентов с повышенной стипендией в каждой группе
Имеется N учебных групп по M студентов. Сведения о размерах стипендий студентов сведены в матрицу....

Записать в файл Имя и Фамилию и вывести в режиме чтения только Фамилию
Уважаемые программисты, прошу помочь в написании программы, которая создает последовательный доступ...

В двоичный файл записать Фамилию, Имя, Занимаемое место, упорядоченные по убыванию и вывести этот файл на экран
// Sportsmens.cpp: определяет точку входа для консольного приложения. //даны количество...

Создать файл, в который записать свою фамилию, имя и отчество. Считать из файла информацию как одно данное типа строка
Мне нужно вывести фамилию в столбик, а код выводит имя (в текстовом файле записано: Имя Фамилия...

0
18.03.2012, 13:59
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
18.03.2012, 13:59
Помогаю со студенческими работами здесь

Вывести студентов со стипендией
Вывести студентов со стипендией &lt;=600 сдавших экзамены без троек! select name,surname,stipend from...

Среди студентов группы найти имя и фамилию самого старшего
Не могу написать программу по теме Комбинированный тип. Задание: среди студентов группы найти имя...

Вывести фамилию, имя и дату рождения студентов второго курса
1- Создать массив из 40 записей (Фамилия, Имя, дата рождения, адрес, курс и группа). Чтение...

Рассчитать средний рост группы и вывести имя, фамилию студентов выше среднего роста
a)Имеется группа студентов из 10 человек. Составить программу для ввода имени, фамилии, года...

Выберите студентов, указав их имя, фамилию и курс, тех, которые проживают в Москве и их стипендия 1000 грн
Выберите студентов, указав их имя, фамилию и курс, тех, которые проживают в Москве и их стипендия...

Вывести список студентов в выходной текстовый файл в порядке убывания оценок студентов
Во входном текстовом файле находится информация о студентах: фамилия, имя и оценка - целое число...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
1
Ответ Создать тему
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2024, CyberForum.ru