Решить на языке программирования golang(или просто go) : (нужно написать программу)
последовательность состоит из натуральных чисел и завершается числом 0. определите количество элементов этой последовательности, которые равны ее наибольшему элементу.
формат входных данных
вводится непустая последовательность натуральных чисел, оканчивающаяся числом 0 (само число 0 в последовательность не входит, а служит как признак ее окончания).
формат выходных данных
выведите ответ на .
пример данных:
1
3
3
1
0
получается 2 (т.к. у нас два наибольших элемента .(две тройки) )
или хотя бы поправьте моё решение(у меня почему-то выдает 1 вместо 2) :
package main
import "fmt"
func main() {
var a,n,i,maxi int
maxi=0
n=0
for i! =0{
if a> maxi {
maxi=a
n=1
} else if a==maxi {
n+=1
}
fmt.scan(& a)
}
fmt.println(n)
}
var
a,b:array[1..n] of integer;
i,j,k,m,c:integer;
begin
Randomize;
writeln('Исходный массив:');
for i:=1 to n do
begin
a[i]:=random(51)-25;
write(a[i]:5);
end;
writeln;
j:=0;
for i:=1 to n do
if a[i]<0 then begin j:=j+1; b[j]:=a[i]; end;
m:=j;
for k := 1 to m-1 do
for i := 1 to m-k do
if (b[i]<b[i+1]) then
begin
c:=b[i]; b[i]:=b[i+1]; b[i+1]:=c;
end;
writeln('Вс массив:');
for i:=1 to m do write(b[i]:5);
writeln;
j:=0;
for i:=1 to n do
if a[i]<0 then begin j:=j+1; a[i]:=b[j]; end;
writeln('Полученный массив:');
for i:=1 to n do write(a[i]:5);
writeln;
end.
Пример:
Исходный массив:
-15 -8 -6 -13 15 24 5 -2 14 -1 19 -2 -7 -8 -23 20 -2 7 -2 -10
Вс массив:
-1 -2 -2 -2 -2 -6 -7 -8 -8 -10 -13 -15 -23
Полученный массив:
-1 -2 -2 -2 15 24 5 -2 14 -6 19 -7 -8 -8 -10 20 -13 7 -15 -23
begin
writeln("введите количество метров пробегания жирафа");
read(y1);
writeln("введите, за сколько секунд он должен пробежать");
read(x1);
writeln("введите количество метров пробегания зайца");
read(y2);
writeln("введите, за сколько секунд он должен пробежать");
read(x2);
v1:=y1/x1;
v2:=y2/x2;
if v1>v2 then
begin
writeln("жираф чемпион");
end
else if v1<v2 then
begin
writeln("заяц чемпион");
end
else
begin
writeln("победила дружба);
end;
end;