М
Молодежь
К
Компьютеры-и-электроника
Д
Дом-и-сад
С
Стиль-и-уход-за-собой
П
Праздники-и-традиции
Т
Транспорт
П
Путешествия
С
Семейная-жизнь
Ф
Философия-и-религия
Б
Без категории
М
Мир-работы
Х
Хобби-и-рукоделие
И
Искусство-и-развлечения
В
Взаимоотношения
З
Здоровье
К
Кулинария-и-гостеприимство
Ф
Финансы-и-бизнес
П
Питомцы-и-животные
О
Образование
О
Образование-и-коммуникации
shaduraalya
shaduraalya
20.01.2022 14:27 •  Информатика

На двумерный массив в pascal! в группе учится n студентов, студенты получили по четыре отметки за экзамен. определить количество неуспевающих студентов и средний группы.

👇
Ответ:
egorsh1
egorsh1
20.01.2022
Const n=5; m=4;
var 
a:array[1..n,1..m] of integer;
i,j,k,d,s:integer;
begin
Randomize;
writeln('Оценки:');
for i:=1 to n do
 begin
 for j:=1 to m do
  begin
  a[i,j]:=random(4)+2;
  write(a[i,j]:4);
  end;
  writeln;
 end;
k:=0; s:=0;
for i:=1 to n do
 begin
 d:=0;
 for j:=1 to m do 
  begin
  if a[i,j]=2 then d:=d+1;
  s:=s+a[i,j];
  end;
 if d>0 then k:=k+1;
 end;
writeln('Количество неуспевающих = ',k);
writeln('Средний группы = ',s/n/m);
end.

Пример:
Оценки:
   5   3   3   5
   3   4   2   2
   4   5   5   5
   2   4   4   2
   5   2   3   3
Количество неуспевающих = 3
Средний группы = 3.55
4,6(6 оценок)
Открыть все ответы
Ответ:
Evgen2100zzz
Evgen2100zzz
20.01.2022

Исходный код (Python 3.8 x64):

class InvalidArgumentException(Exception): pass

class KeyValuePair:

def __init__(self, key, value):

 self._key = key

 self._value = value  

@staticmethod

def FromList(pair: list):

 if (len(pair) != 2): raise InvalidArgumentException("List must contain strictly 2 elements for initialize KeyValuePair")

 return KeyValuePair(pair[0], pair[1])

@property  

def Key(self):

 return self._key  

@property

def Value(self):

 return self._value

 

def strip(string: str):

return string.strip()

def readWordPairs(wordCount: int, pairSeparator: str = "-") -> dict:

temp = dict()

for i in range(wordCount):

 wordPair = KeyValuePair.FromList(list(map(strip, input(f'{i} pair: ').lower().split(pairSeparator

 if wordPair.Key in temp.keys():

  temp[wordPair.Key] = [temp[wordPair.Key], wordPair.Value]

 else:

  temp[wordPair.Key] = wordPair.Value

return temp

def main():

wordCount = int(input("Enter words pairs count:\n"))

wDict = readWordPairs(wordCount)

while True:

 word = input("Enter word: ")

 if word.lower() == "exit": break

 print(f"Synonim: {wDict[word]}" if word in wDict.keys() else "Not found")

input("press any key to close program")

if __name__ == "__main__":

   main()

Объяснение:

Если есть вопросы - не стесняйтесь задать в комментариях к ответу. Ошибок, которые вы описали в задании, в данном случае не наблюдается. Единственное, я сделал так, что бы программа не завершалась после первого найденного слова, а запрашивала слова до тех пор, пока пользователь не введёт команду exit

4,7(63 оценок)
Ответ:
livr5
livr5
20.01.2022
// PascalABC.NET 3.1, сборка 1219 от 16.04.2016
begin
  var a:=ReadLines('m17.txt').JoinIntoString.ToIntegers;
  a.Println;
  var b:=a.Select((x,i)->Rec(x,i)).Where(x->x.Item1<0)
    .Select(x->x.Item2).ToArray;
  if b.Count<>2 then
    Writeln('Количество отрицательных элементов не равно двум')
  else begin
    a:=SeqFill(b[0],0).Concat(a.Skip(b[0]).Take(b[1]-b[0]+1))
      .Concat(SeqFill(a.Length-b[1]-1,0)).ToArray;
    a.Println
    end
end.

Тестовое решение:
23 14 7 15 0 13 -6 41 18 13 8 42 27 -11 3 19 10
0 0 0 0 0 0 -6 41 18 13 8 42 27 -11 0 0 0

Файл с исходными данными имеет имя m17.txt. Тестовый файл находится во вложении. Разбивка на строки сделана по 5 значений, но может быть совершенно произвольной. Также нет привязки именно к 17 числам, главное - чтобы отрицательных чисел было ровно два, иначе будет выдано сообщение о их неверном количестве.
4,6(78 оценок)
Это интересно:
Новые ответы от MOGZ: Информатика
logo
Вход Регистрация
Что ты хочешь узнать?
Спроси Mozg
Открыть лучший ответ