Форум программистов, компьютерный форум, киберфорум
Pascal ABC
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/11: Рейтинг темы: голосов - 11, средняя оценка - 5.00
 Аватар для Катя)
1 / 1 / 0
Регистрация: 19.03.2010
Сообщений: 55

Вывести список студентов претендующих на повышенную стипендию

16.06.2011, 11:56. Показов 2192. Ответов 6
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите с программой пожалуйста!!)

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

повышенная стипендия при 75 % отметок "5".


По самой проге пока понятно все, не могу сообразить как лучше вычислить 75 % ?? подскажите как именно?
через round ?

заранее спасибо)
0
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
16.06.2011, 11:56
Ответы с готовыми решениями:

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

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

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

6
 Аватар для 4epToBc4uHa
26 / 26 / 16
Регистрация: 02.06.2011
Сообщений: 76
16.06.2011, 12:23
среднее арифметическое всех оценок (4 и 5, не включая 3 и 2) для повышенной стипендии >=4.75.
(75*5+25*4)/100=4,75
(3*5+1*4)/4=4,75
и т.д. если имеются 3 и 2 то ето наверно уже не повышенная)))
0
 Аватар для Катя)
1 / 1 / 0
Регистрация: 19.03.2010
Сообщений: 55
16.06.2011, 20:23  [ТС]
да я уже поняла,спасибо

вот так сделала: переменная:=round((кол-во оценок/100)*75);

Добавлено через 1 час 22 минуты
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
program zp;
type ms=array [1..20] of string [40];
    vrec=record;
    fio:string [30];   { ф.и.о}
    ng:integer;     {номер группы}
    ot:char;  {или integer}       {отметка}
    kolot:integer      {кол-во отметок}
 
                  end;
Var rec:array[1..50] of vrec;
   procent,st,i,j,ot,w,k,ng,gt,kolot:integer;{st-студент, gt-пустая переменная}
   l:boolean;
   p:vrec;
 
Begin
 writeln('vvedite kol-vo studentov');
 readln(k);
For i:=1 to k do
with rec[i] do
 begin
  readln(fio);
  readln(ng);
  readln(kolot);
 for j:=1 to kolot do
  readln(rec[i].ot[j]);
 end;
  gt:=0;
  procent:=round((kolot/100)*75);
 for i:=1 to k do
  begin
     for j:=1 to kolot do begin
        if not rec[i].ot[j]=4 then
         if rec[i].ot[j]=5 then begin
          l:=true;
           st:=st+1;
         else l:=false;
         end;
   if st>=procent then begin
      writeln(rec[i].fio);
      gt:=0;
end;
  if gt=0 then writeln ('no....');
  end;
подскажите как исправить? а то уже крыша едет(
Pascal
1
readln(rec[i].ot[j]); {ошибка: переменная ot не является именем массива}
Pascal
1
if not rec[i].ot[j]=4 then {ошибка: операция не применима к операндам этого типа}
0
 Аватар для 4epToBc4uHa
26 / 26 / 16
Регистрация: 02.06.2011
Сообщений: 76
16.06.2011, 20:33
хм...ot не является массивом, а обозначено как
Pascal
1
 ot:char;
поэтому у нее только 1 значение. можно установить конечное значение оценок для всех студентов и обозначить как массив
Pascal
1
ot:array [1..x] of integer
0
 Аватар для Катя)
1 / 1 / 0
Регистрация: 19.03.2010
Сообщений: 55
16.06.2011, 20:50  [ТС]
вроде исправила, прога работает, но некорректно
0
 Аватар для 4epToBc4uHa
26 / 26 / 16
Регистрация: 02.06.2011
Сообщений: 76
16.06.2011, 21:39
ну скорее всего это все таки из за
Pascal
1
round
Добавлено через 7 минут
Pascal
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
gt:=0;
  procent:=round((kolot/100)*75);
 for i:=1 to k do
  begin
     for j:=1 to kolot do begin
        if not rec[i].ot[j]=4 then
         if rec[i].ot[j]=5 then begin
          l:=true;
           st:=st+1;
         else l:=false;
         end;
   if st>=procent then begin
      writeln(rec[i].fio);
      gt:=0;
end;
  if gt=0 then writeln ('no....');
  end;
заменить на
Pascal
1
2
3
4
5
6
7
8
9
10
11
for i:=1 to k do begin
gt:=0;
for j:=1 to x do
if (rec[i].ot[j]<>2) and (rec[i].ot[j]<>3) then gt:=gt+1;
if gt=x then begin
gt:=0;
for j:=1 to x do begin
gt:=gt+rec[i].ot[j]
gt:=gt/x;end;
if gt>=4.75 then write('студент ',rec[i].fio,' получает повышенную стипендию');
end;end;
должно работать правильно, но на паскале не проверял. писал тут. если ошибка то проверю в паскале
0
 Аватар для Катя)
1 / 1 / 0
Регистрация: 19.03.2010
Сообщений: 55
16.06.2011, 23:10  [ТС]
ммм...может я уже не то ввожу, но все равно некорректно
ладно завтра с чистой головой проверю

спасибо за помощь
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
16.06.2011, 23:10
Помогаю со студенческими работами здесь

Отпечатать список K работников, претендующих на новое жилье
Здравствуйте! Помогите пожалуйста с программой на массив записей. Задача: Имеются сведения об обеспеченности жильем N работников...

Выбор студентов, получающих стипендию
Выбор студентов, получающих стипендию. программка у меня почему то не работает( program zap; uses crt; type str=record ...

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

Вывести список не аттестованных студентов
Добрый день помогите пожалуйста Даны ФИО студентов и 5 оценок полученных студентами за сессию. Вывести список не аттестованных студентов...

Вывести список студентов 2 курса
uses crt;type stud=record fio,kurs,data,prishel,gorod:string; kolledj:integer; end; var gr:array of string; i,j:integer; ...


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

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Новые блоги и статьи
Символьное дифференцирование
igorrr37 13.02.2026
/ * Логарифм записывается как: (x-2)log(x^2+2) - означает логарифм (x^2+2) по основанию (x-2). Унарный минус обозначается как ! в-строка - входное арифметическое выражение в инфиксной(обычной). . .
Камера Toupcam IUA500KMA
Eddy_Em 12.02.2026
Т. к. у всяких "хикроботов" слишком уж мелкий пиксель, для подсмотра в ESPriF они вообще плохо годятся: уже 14 величину можно рассмотреть еле-еле лишь на экспозициях под 3 секунды (а то и больше),. . .
И ясному Солнцу
zbw 12.02.2026
И ясному Солнцу, и светлой Луне. В мире покоя нет и люди не могут жить в тишине. А жить им немного лет.
«Знание-Сила»
zbw 12.02.2026
«Знание-Сила» «Время-Деньги» «Деньги -Пуля»
SDL3 для Web (WebAssembly): Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 12.02.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами и вызывать обработчики событий столкновения. . . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 11.02.2026
Содержание блога Библиотека SDL3 содержит встроенные инструменты для базовой работы с изображениями - без использования библиотеки SDL3_image. Пошагово создадим проект для загрузки изображения. . .
SDL3 для Web (WebAssembly): Загрузка PNG с прозрачным фоном с помощью SDL3_image
8Observer8 10.02.2026
Содержание блога Библиотека SDL3_image содержит инструменты для расширенной работы с изображениями. Пошагово создадим проект для загрузки изображения формата PNG с альфа-каналом (с прозрачным. . .
Установка Qt-версии Lazarus IDE в Debian Trixie Xfce
volvo 10.02.2026
В общем, достали меня глюки IDE Лазаруса, собранной с использованием набора виджетов Gtk2 (конкретно: если набирать текст в редакторе и вызвать подсказку через Ctrl+Space, то после закрытия окошка. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru