10 CLS 20 REM Определяет количество положительных и отрицательных элементов массива 30 INPUT "Введите количество элементов в массиве N="; N 40 DIM A(N) 50 REM Ввод элементов массива 60 FOR I = 1 TO N 70 PRINT "Номер"; I; 80 INPUT "Значение элемента массива ="; A(I) 90 NEXT I 110 REM Нахождение количества положительных и отрицательных элементов массива 120 K = 0: S = 0 130 FOR I = 1 TO N 140 IF A(I) > 0 THEN K = K + 1 150 IF A(I) < 0 THEN S = S + 1 160 NEXT I 170 REM Вывод результатов 180 PRINT "Количество положительных элементов ="; K 190 PRINT "Количество отрицательных элементов ="; S 200 END
В таком виде программа была выполнена в среде LB Booster - бесплатной версии со входным языком Liberty BASIC. Сама же Liberty BASIC является коммерческим продуктом, в связи с чем попробовать выполнить эту программу именно в этой среде не представляется возможным.
1) var a:array[1..20] of integer; index, Min,count, i, n:integer; begin Readln(n); Min:= 81;index:=-1; For i:= 1 to n do begin a[i]:= random(96) - 15; Write(a[i], ' '); if Min = a[i] then count:= count+1; if Min > a[i] then begin Min:=a[i]; index:=i; count:=1; end; end; Writeln; Writeln('Min = ', Min); Writeln('Минимумов: ', count, ' их сумма равна ', count*Min); for i:= n downto 2 do if (a[i] < 0) and (a[i-1] < 0) then begin Write('Номера соседних отрицательных эл-в -> '); Writeln(i-1, ' ', i); break; end; end.
Пример: 20 59 -3 44 -15 60 -3 70 -15 -10 1 -1 -2 21 23 -5 24 45 -10 0 48 Min = -15 Минимумов: 2 их сумма равна -30 Номера соседних отрицательных эл-в -> 11 12
2)
var a,b:array[1..200] of integer; i, n,cnt, j, Max:integer; begin Readln(n); Read(a[1]);Max:=a[1];cnt:=1; For i:= 2 to n do begin Read(a[i]); if a[i] = max then cnt:= cnt+1; if a[i] > max then begin max:=a[i]; cnt:=1; end; end; j:=1; for i:=1 to n do if a[i] < Max then begin b[j]:=a[i]; j:= j+1; end; for i:= j to n do b[i]:=Max; for i:=1 to n do Write(b[i], ' '); end.
Пример: 6 1 5 3 2 5 0 1 3 2 0 5 5
type Info = record name:string; unpl:integer;//unemployment end;
var a:array[1..40] of Info; tmp:Info; i, j:integer; begin For i:= 1 to 40 do begin Readln(a[i].name); Readln(a[i].unpl); end; For i:= 1 to 40 do for j:= i to 40 do if a[i].unpl > a[j].unpl then begin tmp.name:= a[i].name; tmp.unpl:= a[i].unpl; a[i].name:=a[j].name; a[i].unpl:=a[j].unpl; a[j].name:=tmp.name; a[j].unpl:=tmp.unpl; end; Writeln('три неблагополучных района:') Writeln(a[40].name); Writeln(a[39].name); Writeln(a[38].name); Writeln('три наиболее благополучных'); Writeln(a[1].name); Writeln(a[2].name); Writeln(a[3].name); end.
135916=100001001011101100