Технический форум
Вернуться   Технический форум > Программирование > Форум программистов > Помощь студентам


Ответ
 
Опции темы Опции просмотра
Старый 17.11.2016, 15:02   #1 (permalink)
АсяЯ
Member
 
Регистрация: 05.11.2016
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию Паскаль. Задача о студентах

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

Type
ekz=Record
e1: Byte;
e2: Byte;
e3: Byte;
b:string;
end;
Var
x: Array[1..10] of ekz;
y: Array[1..10] of Real;
s: Real;
i,k,n: Integer;
b:string;
BEGIN
Writeln('Введите оценки через пробел:');
For i:=1 to 10 do
begin
Writeln('Введите Фамилию студента:');readln(b);
Writeln(i,' студент', b);
Read(x[i].e1,x[i].e2,x[i].e3);
y[i]:=(x[i].e1+x[i].e2+x[i].e3)/3;
s:=s+x[i].e1+x[i].e2+x[i].e3;
Inc(n,3);
end;
Writeln('Средний балл каждого студента:');
For i:=1 to 10 do
Write(y[i]:5:2);
Writeln;
Writeln('Общий средний балл= ',s/n:5:2);
Readln
END.
АсяЯ вне форума   Ответить с цитированием

Старый 17.11.2016, 15:02
Helpmaster
Member
 
Аватар для Helpmaster
 
Регистрация: 08.03.2016
Сообщений: 0

Участники нашего форума уже интересовались похожим, вот, посмотрите

Задача паскаль
Задача, Паскаль

Старый 17.11.2016, 17:17   #2 (permalink)
Vladimir_S
Специалист
 
Аватар для Vladimir_S
 
Регистрация: 27.08.2008
Адрес: Санкт-Петербург
Сообщений: 26,303
Сказал(а) спасибо: 287
Поблагодарили 506 раз(а) в 164 сообщениях
Репутация: 91675
По умолчанию

Цитата:
Сообщение от АсяЯ Посмотреть сообщение
Для каждого студента группы указаны фамилия и оценка в баллах по пяти дисциплинам.Вычислить средний балл в группе и упорядочить список по убыванию среднего балла каждого студента.
Пожалуйста:
Код:
Const
 Nstud=10;
Type
 ekz=Record
      b:string;
      e:array[1..5] of byte;
      e_aver:real;
     End;
Var
 x: Array[1..Nstud] of ekz;
 i,k,L: Integer;
 Av_mrk:real;
 D:ekz;

Begin
 for i:=1 to Nstud do
  with x[i] do
   begin
    write('Enter the surname of student: ');
    readln(b);
    Write('Enter five marks with spaces: ');
    for k:=1 to 4 do read(e[k]);
    readln(e[5]);
    e_aver:=0;
    for k:=1 to 5 do e_aver:=e_aver+e[k]/5;
   end;
 Writeln('Surname           mark1 mark2 mark3 mark4 mark5    Aver.');
 for i:=1 to Nstud do
  with x[i] do
   begin
    write(b);
    L:=length(b);
    for k:=1 to 15-L do write(' ');
    for k:=1 to 5 do write(e[k]:6);
    writeln(e_aver:10:2);
   end;
 Av_mrk:=0;
 for i:=1 to Nstud do
  with x[i] do
   for k:=1 to 5 do
    Av_mrk:=Av_mrk+e[k];
 Writeln('Averaged mark of the group: ',Av_mrk/5/Nstud:4:2);

 for i:=1 to Nstud-1 do
  for k:=1 to Nstud-i do
   if x[k].e_aver<x[k+1].e_aver then
    begin
     D:=x[k];
     x[k]:=x[k+1];
     x[k+1]:=D;
    end;

 Writeln('Surname           mark1 mark2 mark3 mark4 mark5    Aver.');
 for i:=1 to Nstud do
  with x[i] do
   begin
    write(b);
    for k:=1 to 15-length(b) do write(' ');
    for k:=1 to 5 do write(e[k]:6);
    writeln(e_aver:10:2);
   end;
 Readln
End.
__________________
With Mozilla Firefox - straight to communism!
Vladimir_S вне форума   Ответить с цитированием
Старый 18.11.2016, 14:19   #3 (permalink)
АсяЯ
Member
 
Регистрация: 05.11.2016
Сообщений: 14
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 10
По умолчанию

Большое спасибо.
АсяЯ вне форума   Ответить с цитированием
Ads

Яндекс

Member
 
Регистрация: 31.10.2006
Сообщений: 40200
Записей в дневнике: 0
Сказал(а) спасибо: 0
Поблагодарили 0 раз(а) в 0 сообщениях
Репутация: 55070
Ответ

Опции темы
Опции просмотра

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Выкл.
HTML код Выкл.
Trackbacks are Вкл.
Pingbacks are Вкл.
Refbacks are Выкл.




Часовой пояс GMT +4, время: 19:09.

Powered by vBulletin® Version 6.2.5.
Copyright ©2000 - 2014, Jelsoft Enterprises Ltd.