Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 4.88/8: Рейтинг темы: голосов - 8, средняя оценка - 4.88
0 / 0 / 0
Регистрация: 09.02.2017
Сообщений: 19

Выбор студентов, получающих стипендию

15.05.2017, 10:29. Показов 1608. Ответов 3
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Выбор студентов, получающих стипендию.
программка у меня почему то не работает(
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
program zap; 
uses crt; 
 type 
 str=record 
 fam:string[10]; 
 oc:array[1..3] of integer; 
 end; 
 function occ:integer; 
 label 1; 
 var 
 a:integer; 
 begin 
 1:readln(a); 
 if (a<3) or (a>5) then begin 
 writeln('error vvoda( 3<=ocenka<=5 '); goto 1; end; 
 occ:=a; 
 end; 
 var 
 tbl:array[1..100] of str; 
 j,i,n,K:integer; 
 S:array[1..3] of real; 
 BEGIN 
 clrscr; 
 writeln('rabota s zapisyami'); 
 writeln('-------------------'); 
 writeln; 
 write('vvesti chislo studentov ==> '); 
 readln(n); 
 writeln('vvesti FIO i 3 ocenki '); 
 for i:=1 to n do begin writeln(i:2,' student'); 
 with tbl do begin 
 readln(fam); 
 write('ocenka po ximii '); oc[1]:=occ; 
 write('ocenka po matematike '); oc[2]:=occ; 
 write('ocenka po informatike '); oc[3]:=occ; 
 end; end; 
 writeln('isxodniy spisok '); 
 writeln('------------------------------------------'); 
 writeln('familiya ximiya matematika informatika '); 
 writeln('------------------------------------------'); 
 for i:=1 to n do 
 with tbl do 
 writeln(fam,' ',oc[1]:10,oc[2]:11,oc[3]:12); 
 writeln('------------------------------------------'); 
 
 writeln; 
 writeln(' spisok студентов, кто не будет получать стипендию '); 
 for i:=1 to n do 
 with tbl do 
 if ((oc[1]=3) or (oc[2]=3) or (oc[3]=3)) then writeln(fam); 
 writeln('---------------------------------------------------'); 
 writeln(' spisok студентов, кто будет получать обычную стипендию '); 
 for i:=1 to n do 
 with tbl do 
 if ((oc[1]=5) and (oc[2]=4) and (oc[3]=4)) 
 or 
 ((oc[1]=4) and (oc[2]=5) and (oc[3]=4)) 
 or ((oc[1]=4) and (oc[2]=4) and (oc[3]=5)) then writeln(fam); 
 writeln('--------------------------------------------------------'); 
 writeln(' spisok студентов, кто будет получать повышенную стипендию'); 
 for i:=1 to n do 
 with tbl do 
 if (oc[1]+oc[2]+oc[3]>=14) then writeln(fam); 
 writeln('----------------------------------------------------------'); 
 writeln('konec zadachi'); 
 readkey; 
END.
0
IT_Exp
Эксперт
34794 / 4073 / 2104
Регистрация: 17.06.2006
Сообщений: 32,602
Блог
15.05.2017, 10:29
Ответы с готовыми решениями:

Определить ФИО и средний балл студентов, получающих стипендию
Дана информация о группе студентов. Для каждого студента указать ФИО, год рождения, средний балл. Составить программу, которая позволяет...

Вывести список студентов претендующих на повышенную стипендию
Подскажите с программой пожалуйста!!) Задача: Ведомость содержит итоги сессии: ФИО, номер группы и оценки полученные в сесию. ...

Вывести на экран данные о зачислении студентов группы ХХ на стипендию
program Kyrsovik; uses crt; type Klient=record n:integer; FIO:string; ...

3
Эксперт Pascal/Delphi
6812 / 4568 / 4820
Регистрация: 05.06.2014
Сообщений: 22,434
16.05.2017, 11:19
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
program zap;
 
uses crt; 
type
  str = record 
    fam: string[10]; 
    oc: array[1..3] of integer; 
  end;
 
function occ: integer;
var
  a: integer;
begin
  repeat
    write('Введите оценку в интервале от 3 до 5: ');
    readln(a); 
  until a in [3..5];
  occ := a; 
end;
 
var
  tbl: array[1..100] of str; 
  j, i, n, K: integer; 
  S: array[1..3] of real;
 
begin
  clrscr; 
  writeln('rabota s zapisyami'); 
  writeln('-------------------'); 
  writeln; 
  write('vvesti chislo studentov ==> '); 
  readln(n); 
  writeln('vvesti FIO i 3 ocenki '); 
  for i := 1 to n do 
  begin
    writeln(i:2, ' student'); 
    with tbl[i] do 
    begin
      readln(fam); 
      write('ocenka po ximii ');
      oc[1] := occ;
      write('ocenka po matematike ');
      oc[2] := occ;
      write('ocenka po informatike ');
      oc[3] := occ;
    end; 
  end;
  writeln('isxodniy spisok '); 
  writeln('------------------------------------------'); 
  writeln('familiya ximiya matematika informatika '); 
  writeln('------------------------------------------'); 
  for i := 1 to n do 
    with tbl[i] do 
      writeln(fam, ' ', oc[1]:10, oc[2]:11, oc[3]:12); 
  writeln('------------------------------------------'); 
  
  writeln; 
  writeln(' spisok студентов, кто не будет получать стипендию '); 
  for i := 1 to n do 
    with tbl[i] do 
      if ((oc[1] = 3) or (oc[2] = 3) or (oc[3] = 3)) then writeln(fam); 
  writeln('---------------------------------------------------'); 
  writeln(' spisok студентов, кто будет получать обычную стипендию '); 
  for i := 1 to n do 
    with tbl[i] do 
      if ((oc[1] = 5) and (oc[2] = 4) and (oc[3] = 4)) 
      or 
      ((oc[1] = 4) and (oc[2] = 5) and (oc[3] = 4)) 
      or ((oc[1] = 4) and (oc[2] = 4) and (oc[3] = 5)) then 
        writeln(fam); 
  writeln('--------------------------------------------------------'); 
  writeln(' spisok студентов, кто будет получать повышенную стипендию'); 
  for i := 1 to n do 
    with tbl[i] do 
      if (oc[1] + oc[2] + oc[3] >= 14) then writeln(fam); 
  writeln('----------------------------------------------------------'); 
  writeln('konec zadachi'); 
  readkey; 
end.
0
0 / 0 / 0
Регистрация: 09.02.2017
Сообщений: 19
07.06.2017, 01:50  [ТС]
Помогите пожалуйста
Суть программы состоит в том, что на находит того человека кто получает стипендию
Программа считывает с двух файлов данные и потом выводит на экран результат.
То есть в первом файле family у меня расположены имена по порядку в столбец , во втором файле note у меня оценки также по порядку в столбец
А мне нужно сделать так, чтобы все данные были в одном файле
пример:
Петров 4 4 4
сидоров 4 4 4
и того кто получает стипендию выводило в другой текстовый файл, а не на экран


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
program zap;
 var f,g:text;
    n,s:string;
    a,k,p:integer;
begin
assign(f,'family.txt');
reset(f);
assign(g,'note.txt');
reset(g);
writeln('Получают стипендию');
k:=0;
while not eof(f) do
 begin
  readln(f,n);
  p:=0;
  while not eoln(g)and(p=0) do
   begin
    read(g,a);
    if not(a in [4,5])then p:=1;
   end;
  if p=0 then
   begin
    k:=1;
    writeln(n);
   end;
  readln(g,s);
 end;
close(f);
close(g);
if k=0 then write('Таких студентов нет');
end.
0
0 / 0 / 0
Регистрация: 09.02.2017
Сообщений: 19
07.06.2017, 18:20  [ТС]
Дан текст программы КОТОРАЯ показывает какой студент получает стипендию.
В моей программе два файла.
В первом имя студента family
Во втором оценки которые расположены по порядку
То есть программа открывает файл с именем , потом папку с оценками и выводит ответ на ЭКРАН.
А мне нужно чтобы имя и оценки были в одной папке, а имя человека получающего стипендию записывалась в другую папку
Как сделать это?)
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
program zap; 
var f,g:text; 
n,s:string; 
a,k,p:integer; 
begin 
assign(f,'family.txt'); 
reset(f); 
assign(g,'note.txt'); 
reset(g); 
writeln('Получают стипендию'); 
k:=0; 
while not eof(f) do 
begin 
readln(f,n); 
p:=0; 
while not eoln(g)and(p=0) do 
begin 
read(g,a); 
if not(a in [4,5])then p:=1; 
end; 
if p=0 then 
begin 
k:=1; 
writeln(n); 
end; 
readln(g,s); 
end; 
close(f); 
close(g); 
if k=0 then write('Таких студентов нет'); 
end.
все перепробовал, не получается
в 1 файле типо запись должна была бвть:
Иванов 5 5 5 5
не знаю как высситатт в строке сначала буквы потом цифры
если конечно не занят
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
BasicMan
Эксперт
29316 / 5623 / 2384
Регистрация: 17.02.2009
Сообщений: 30,364
Блог
07.06.2017, 18:20
Помогаю со студенческими работами здесь

Вывести ФИО и стипендию студентов, имеющих только положительные оценки
Нужно вывести ФИО и стипендию студентов имеющих только положительные оценки. Код написал, но он пропускает ФИО для 1го студента, не могу...

Обработка файловых структур данных: Написать программу зачисления студентов группы X на стипендию
Написать программу зачисления студентов группы X на стипендию. Студент, получивший все оценки &quot;5&quot; и активно участвующий в...

Распечатайте список фамилий студентов, получающих стипендию
Пусть в файле фамилий family находятся фамилии студентов(одна запись-одна фамилия),в файле оценок note-в том же порядке оценки...

Структура : Выбор студентов заданного пола, не получающих стипендию.
Выбор студентов заданного пола, не получающих стипендию. Как реализовать условие: выбор определенного пола? #include...

Выдать список студентов получающих стипендию
выдать список студентов получающих стипендию.всего 4 экзамена. вводим:ФИО, номер группы, курс. есть ли оценки &quot;3&quot; uses...


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

Или воспользуйтесь поиском по форуму:
4
Ответ Создать тему
Новые блоги и статьи
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост.
Programma_Boinc 28.12.2025
Советы по крайней бережливости. Внимание, это ОЧЕНЬ длинный пост. Налог на собак: https:/ / **********/ gallery/ V06K53e Финансовый отчет в Excel: https:/ / **********/ gallery/ bKBkQFf Пост отсюда. . .
Кто-нибудь знает, где можно бесплатно получить настольный компьютер или ноутбук? США.
Programma_Boinc 26.12.2025
Нашел на реддите интересную статью под названием Anyone know where to get a free Desktop or Laptop? Ниже её машинный перевод. После долгих разбирательств я наконец-то вернула себе. . .
Thinkpad X220 Tablet — это лучший бюджетный ноутбук для учёбы, точка.
Programma_Boinc 23.12.2025
Рецензия / Мнение/ Перевод Нашел на реддите интересную статью под названием The Thinkpad X220 Tablet is the best budget school laptop period . Ниже её машинный перевод. Thinkpad X220 Tablet —. . .
PhpStorm 2025.3: WSL Terminal всегда стартует в ~
and_y87 14.12.2025
PhpStorm 2025. 3: WSL Terminal всегда стартует в ~ (home), игнорируя директорию проекта Симптом: После обновления до PhpStorm 2025. 3 встроенный терминал WSL открывается в домашней директории. . .
Как объединить две одинаковые БД Access с разными данными
VikBal 11.12.2025
Помогите пожалуйста !! Как объединить 2 одинаковые БД Access с разными данными.
Новый ноутбук
volvo 07.12.2025
Всем привет. По скидке в "черную пятницу" взял себе новый ноутбук Lenovo ThinkBook 16 G7 на Амазоне: Ryzen 5 7533HS 64 Gb DDR5 1Tb NVMe 16" Full HD Display Win11 Pro
Музыка, написанная Искусственным Интеллектом
volvo 04.12.2025
Всем привет. Некоторое время назад меня заинтересовало, что уже умеет ИИ в плане написания музыки для песен, и, собственно, исполнения этих самых песен. Стихов у нас много, уже вышли 4 книги, еще 3. . .
От async/await к виртуальным потокам в Python
IndentationError 23.11.2025
Армин Ронахер поставил под сомнение async/ await. Создатель Flask заявляет: цветные функции - провал, виртуальные потоки - решение. Не threading-динозавры, а новое поколение лёгких потоков. Откат?. . .
Поиск "дружественных имён" СОМ портов
Argus19 22.11.2025
Поиск "дружественных имён" СОМ портов На странице: https:/ / norseev. ru/ 2018/ 01/ 04/ comportlist_windows/ нашёл схожую тему. Там приведён код на С++, который показывает только имена СОМ портов, типа,. . .
Сколько Государство потратило денег на меня, обеспечивая инсулином.
Programma_Boinc 20.11.2025
Сколько Государство потратило денег на меня, обеспечивая инсулином. Вот решила сделать интересный приблизительный подсчет, сколько государство потратило на меня денег на покупку инсулинов. . . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2025, CyberForum.ru