Категория
Информатика, опубликовано 08.03.2019 15:20

Исправьте ошибки в program partiii; var n, numparties, i, j, t: integer; count: array[1..10] of integer; s: string[50]; names: array[1..10] of string; begin numparties: =0; readln(n); for i: =1 to numparties do begin max: =count[i]; n: =i; for l: =1 to numparties do begin if count[l]> max then begin max: =count[l]; n: =l; end; end; if names[n]< > '' then begin
writeln (names[n]); count[n]: =-1; names[n]: =''; end; end; for i: =2 to numparties do if count[i-1]> n then begin n: =count[i]; t: =i; end; writeln(names[t]) end. вот какое было , доработайте программу так, чтобы она решала следующую : 1) программа должна вывести список всех партий,
встречающихся в исходном списке, в порядке убывания количества голосов, отданных за эту партию. при этом название каждой партии должно быть выведено ровно один раз, вне зависимости от того, сколько голосов было отдано за
данную партию. пример выходных данных для выше примера входных данных: party three party two party one 2) на вход программы подается список, при этом некоторые голоса являются недействительными, в этом случае вместо названия партии
записан один символ «.» (точка). партия проходит в парламент, если за нее отдано не менее 7% от общего числа действительных голосов (то есть от количества строк в списке, которые не равны «.»). программа должна вывести список
всех партий, прошедших в парламент, в произвольном порядке. при этом название каждой партии должно быть выведено ровно один раз, вне зависимости от того, сколько голосов было отдано за данную партию.

Ответы

Ответ
Ответ оставил: Гость
1) program partiii; var   n, numparties, i, j, max: integer;   count: array[1..10] of integer;   names: array[1..10] of string; begin   writeln('количество партий: ');   read (numparties);   for i: =1 to numparties do   begin         if names[n]< > '' then         begin             max: =count[i];             n : = i;             for j: =2 to numparties do             begin                 if count[j]> max then                 begin                     max : = count[j];                     n: =j;                 end;             end;             writeln (names[n]);             count[n] : = -1;             names[n] : = '';         end;   end; end; end. 2) алгоритм: вводятся данные в массив inlist. массив просматривается, при совпадении партии увеличивается счетчик. названия партий добавляются в список по мере встречаемости во входном массиве. названия с точкой тоже подсчитываются. дальше считается число действительных голосов, лпределяется процент. если больше 7 - выводится. процент недействительных голосов тоже выводится на общих основаниях. program partiii; const   m=2000; var   n, numparties, i, j: integer;   inlist: array[1..m] of integer;               //входной список   s: string;   n: real;   t: boolean;   names: array[1..10] of string;           //список партий   count: array[1..10] of integer;           //количество голосов begin   numparties : = 1;   names[1] : = inlist[1];   count[1] : = 1;   for i : = 2 to m do   begin         s : = inlist[i];         t : = false;         for j: =1 to numparties do         begin               if s=names[j] then               begin                     t : = true;                     count[j] : = count[j] + 1;               end;         end;         if (t = false) then                                                      //партия встретилась первый раз. добавляем в список         begin               numparties : = numparties +1;               count[numparties] : = 1;               names[numparties] : = inlist[i];         end;   end;   for j: =1 to numparties do  if names[j] < > '.' then n : = n + count[j];   //общее количество голосов без '.'   for j: =1 to numparties do   begin         if names[j] < > '.' then         begin                 n1 : = count[j]/n;                       //% по партии                 if n1 > = 7 then  writeln (names[j]);           end           else           begin                   n1 : = count[j]/n;                   writeln ('недействительных голосов: ', n1, ' %');           end;   end; end; end.
Ответ
Ответ оставил: Гость
Бъяснение
A=[(-1)**i*i for i in range(15)]
B=[(-1)**i*(-i) for i in range(1,15,3)]
print(A,B)
C=[]
for i in A+B:
if i<0:
C.append(i)
Ответ
Ответ оставил: Гость
А 1110012 бы ллдлддэээж
Ответ
Ответ оставил: Гость
дело в том, что на каждый жизненный случай производители музыкальных центров и домашних кинотеатров в принципе угодить не могут. Дело и в габаритах помещений, и в форме, и во вкусах зрителей. А причем тут последнее? Ну, как бы это сказать… Продвинутая акустическая система стоит намного дороже, нежели лучший домашний кинотеатр с музыкальным центром вместе взятые. А это накладывает некоторые ограничения на маркетинговую политику.


Другие вопросы по информатике

✅ Ответов: 1 на вопрос по информатике: Исправьте ошибки в program partiii; var n, numparties, i, j, t: integer; count: array[1..10] of integer; s: string[50]; names: array[1..10] of string; begin numparties: =0; readln(n); for i: =1 to numparties do begin max: =count[i]; n: =i; for l: =1 to numparties do begin if count[l]> max then begin max: =count[l]; n: =l; end; end; if names[n]&l... ты найдешь на сайте. Также ты можешь добавить свой вариант ответа, если считаешь, что он не верен или твой ответ более полный. Пожалуйста, добавляй только правильные ответы.
Вконтакте Youtube