0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 15
1

Определить количество абитуриентов, сдавших вступительные экзамены только на "отлично"

26.04.2017, 21:45. Показов 2944. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Добрый вечер! Появилась проблема с одной задачкой. Кому не сложно, прошу помочь.
-\\-\\-\\-\\-\\-
Результаты вступительных экзаменов представлены в виде списка из N строк, в каждой строке которого записаны фамилия студента и отметки по каждому из M экзаменов. Определить количество абитуриентов, сдавших вступительные экзамены только на "отлично".
-\\-\\-\\-\\-\\-
Попрошу написать программу на уровне школьника, что бы было понятно.
Есть своя программа, но она с ошибкой (какой знаю, но как исправить - не знаю).
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
program dz;
var k,n,j,d,r,i:integer;a:string; b:array[1..256,1..256] of string; c:array[1..256,1..256] of integer;
  begin
  writeln('введите количество студентов');
  readln(n);
  writeln('введите количество оценок');
  readln(r);
  writeln('введите учеников и их оценки');
  for j:=1 to n do begin
  readln(a);
  b[1][j]:=a;
  end;
    for j:=1 to n do begin
    for i:=1 to length(b[1][j]) do begin
    if b[i][j]='2' then c[i][j]:=2;
    if b[i][j]='3' then c[i][j]:=3;
    if b[i][j]='4' then c[i][j]:=4;
    if b[i][j]='5' then c[i][j]:=5; end;end;
  for j:=1 to n do
  for i:=1 to length(b[1][j]) do begin
  k:=k+c[i][j];
  if k mod r=5 then d:=d+1; end;
  writeln('количество отличников=',d);
  end.
Заранее спасибо.
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
26.04.2017, 21:45
Ответы с готовыми решениями:

Определить кол абитуриентов, сдавших вступительные экзамены только на 5
Всем привет)) По этой задачи на форуме есть много вопросов, но каждый раз там не то=((( Вот...

Печать фамилий студентов, сдавших экзамены только на "5"
11. Создайте файл, содержащий фамилии студентов и их экзаменационные оценки по 5 предметам....

Найти наибольший балл среди учащихся, сдавших экзамен на "отлично"
Дан файл целых чисел. Элементы могут принимать значения от 0 до 100 - баллы, полученные на ЕГЭ....

Список абитуриентов, сдавших вступительные экзамены на оценки 4 и 5 и возраст менее 20 лет
Привет всем!Помогите сделать такую вот задачку: написать с помощью файлового типа данных список...

2
80 / 80 / 78
Регистрация: 30.12.2015
Сообщений: 256
27.04.2017, 05:14 2
Фурия, так работает
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
program dz;
var k,n,j,d,r,i:integer;a:string; b:array[1..256,1..256] of string; c:array[1..256,1..256] of integer;
  begin
  writeln('введите количество студентов');
  readln(n);
  writeln('введите количество оценок');
  readln(r);
  writeln('введите учеников и их оценки');
  for j:=1 to n do begin
  readln(a);
  b[1][j]:=a;
  end;
    for j:=1 to n do begin
    for i:=1 to length(b[1][j]) do begin
    if b[i][j]='2' then c[i][j]:=2;
    if b[i][j]='3' then c[i][j]:=3;
    if b[i][j]='4' then c[i][j]:=4;
    if b[i][j]='5' then c[i][j]:=5; end;end;
  k:=0;  
  for j:=1 to n do
  d:=0;
  for i:=1 to length(b[1][j]) do begin
  k:=k+c[i][j];
  if k mod r=5 then d:=d+1; end;
  writeln('количество отличников=',d);
  end.
Добавлено через 30 минут
работает но не верно

Добавлено через 46 минут
Фурия, проверяй
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
program dz;
var k,n,j,d,r,i,ci:integer;a,bi:string; b:array[1..256,1..256] of string; c:array[1..256,1..256] of integer;
  begin
  writeln('введите количество студентов');
  readln(n);
  writeln('введите количество оценок');
  readln(r);
  writeln('введите учеников и их оценки');
  
  for j:=1 to n do begin
  readln(a);
  b[1][j]:=a;
  end;  
  for j:=1 to n do begin
  ci:=1; bi:=b[1][j];
  for i:=1 to length(b[1][j]) do begin
    if bi[i]='2' then begin c[ci][j]:=2;ci:=ci+1;end;
    if bi[i]='3' then begin c[ci][j]:=3;ci:=ci+1;end;
    if bi[i]='4' then begin c[ci][j]:=4;ci:=ci+1;end;
    if bi[i]='5' then begin c[ci][j]:=5;ci:=ci+1;end;  
    end;end;
  d:=0; 
  for j:=1 to n do begin
   k:=0;
   for i:=1 to r do k:=k+c[i][j];    
   if k div r=5 then d:=d+1; 
  end;
  writeln('количество отличников=',d);
  end.
1
0 / 0 / 0
Регистрация: 26.04.2017
Сообщений: 15
27.04.2017, 05:23  [ТС] 3
VladimirD, Спасибо большое! Программа работает!
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
27.04.2017, 05:23
Помогаю со студенческими работами здесь

Вывести фамилию студента, сдавшего все экзамены на "отлично"
Вывести фамилию того студента который сдал все экзамены на отлично. Ввести инфо. о студентах в...

Вывести фамилии тех студентов, которые сдали все экзамены на "отлично"
ребятки помогите не могу допереть как сделать дальше ,пропустил тему по болезни а теперь доганяю ...

Определить количество абитуриентов, сдавших вступительные экзамены на «отлично»
Напишите пожалуйста алгоритм. Код я сам) Результаты вступительных экзаменов представлены в виде...

Ведомость абитуриентов, сдавших вступительные экзамены в университет, содержит ФИО абитуриента, оценки. Опреде
есть примерный код помогите доделать) #ifndef STRUCT #define STRUCT #include "qstring.h" //...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2023, CyberForum.ru