• Добро пожаловать на компьютерный форум Tehnari.ru. Здесь разбираемся с проблемами ПК и ноутбуков: Windows, драйверы, «железо», сборка и апгрейд, софт и безопасность. Форум работает много лет, сейчас он переехал на новый движок, но старые темы и аккаунты мы постарались сохранить максимально аккуратно.

    Форум не связан с магазинами и сервисами – мы ничего не продаём и не даём «рекламу под видом совета». Отвечают обычные участники и модераторы, которые следят за порядком и качеством подсказок.

    Если вы у нас впервые, загляните на страницу о проекте и правила – там коротко описано, как задать вопрос так, чтобы быстро получить ответ. Чтобы создавать темы и писать сообщения, сначала зарегистрируйтесь, а затем войдите под своим логином.

    Не знаете, с чего начать? Создайте тему с описанием проблемы – подскажем и при необходимости перенесём её в подходящий раздел.
    Задать вопрос Новые сообщения Как правильно спросить
    Если пришли по старой ссылке со старого Tehnari.ru – вы на нужном месте, просто продолжайте обсуждение.

Помощь в решении

SProkhorenkov

Ученик
Регистрация
21 Янв 2014
Сообщения
1
Реакции
0
Баллы
0
Помощь в решении

Помогите написать алгоритм решения и Паскаль программу к задаче.Желательно с пояснениями.
 

Вложения

  • image.webp
    image.webp
    33.2 KB · Просмотры: 45
Помогите написать алгоритм решения и Паскаль программу к задаче.Желательно с пояснениями.

Алгоритмами в смысле блок-схемами и прочим не занимаюсь, а программу - пожалуйста, легче легкого:
Код:
[COLOR=Red][B]{Объявляем переменные:}[/B][/COLOR]
Var
 TF13:Array[1..22,1..5] of Byte;
 i,j,Max,Sum:Byte;
 b:boolean;
[COLOR=Red][B]{Начинаем программу:}[/B][/COLOR]
Begin
[COLOR=Red][B]{Запускаем генератор случайных чисел:}[/B][/COLOR]
 Randomize;
[COLOR=Red][B]{Генерируем таблицу оценок в диапазоне от 2 до 5:}[/B][/COLOR]
 for i:=1 to 22 do
  for j:=1 to 5 do
   TF13[i,j]:=Random(4)+2;
[COLOR=Red][B]{Выводим таблицу на экран в две колонки. Столбцы слева - порядковые номера студентов}[/B][/COLOR]
 for i:=1 to 11 do
  begin
   write(i:2,'     ');
   for j:=1 to 5 do write(TF13[i,j]:2);
   write((i+11):10,'     ');
   for j:=1 to 5 do write(TF13[i+11,j]:2);
   writeln;
  end;
 writeln;
[COLOR=Red][B]{Ищем максимальную по студентам сумму баллов:}[/B][/COLOR]
 Max:=0;
 for i:=1 to 22 do
  begin
   Sum:=0;
   for j:=1 to 5 do Inc(Sum,TF13[i,j]);
   if Sum>Max then Max:=Sum;
  end;
[COLOR=Red][B]{Выводим номера студентов, имеющих максимальную сумму баллов:}[/B][/COLOR]
 writeln('Students having maximal average mark (',Max/5:5:3,'):');
 for i:=1 to 22 do
  begin
   Sum:=0;
   for j:=1 to 5 do Inc(Sum,TF13[i,j]);
   if Sum=Max then write(i:3);
  end;
 writeln;
[COLOR=Red][B]{Ищем студентов без двоек, и при нахождении выводим их номера на экран:}[/B][/COLOR]
 writeln('Students having no unsatisfactory marks:');
 for i:=1 to 22 do
  begin
   b:=true;
   for j:=1 to 5 do if TF13[i,j]=2 then b:=false;
   if b then write(i:3);
  end;
[COLOR=Red][B]{Останавливаем программу:}[/B][/COLOR]
 readln
[COLOR=Red][B]{Завершаем программу:}[/B][/COLOR]
End.
 
Назад
Сверху