Сивт: 1.случайным образом генерируется n целых чисел в диапазоне от -5 до 5. посчитать сколько среди них положительных, отрицательных, и не равных нуля. решается через turbo pascal
Var ar:array of array of integer; n1,k,i,n2,j:integer; b:boolean; begin; readln(n1); readln(n2); inc(n1); inc(n2); k:=1; setlength(ar,n1+1); while k<>n1 do begin; setlength(ar[k],n2+1); inc(k); end; b:=false; k:=0; i:=1; j:=1; writeln('Matrix:'); while i<>n1 do begin; writeln; while j<>n2 do begin; ar[i,j]:=random(100)-50; write(ar[i,j]:4); inc(j); end; j:=1; inc(i); end; i:=1; j:=1; while i<>n1 do begin; while j<>n2 do begin; if ar[i,j]<0 then b:=true; inc(j); end; if b=false then begin; writeln; writeln(i); exit; end; b:=false; inc(i); j:=1; end; writeln; writeln('Все'); end.
#include <iostream>
using namespace std;
int main()
{
int N;
int i1=0,i2=0;
cin>>N;
for(int i=0;i<N;i++)
{
int a = rand()%11-5;
if(a<0)
i1++;
if(a>0)
i2++;
}
cout<<">0 - "<<i2<<endl<<"<0 - "<<i1<<endl<<"!=0 - "<<i1+i2<<endl;
system("PAUSE");
}
P.S. Задачу можно решить не только через Turbo Pascal.
TurboPascal(может не очень верно)
var
a,n, i1, i2, i: integer;
begin
n := 42;
for i:=1 to n do begin
a:=random(11)-5;
if a > 0 then
i1 := i1 + 1;
if a < 0 then
i2 := i2 + 1;
end;
writeln("> 0-", i1);
writeln("< 0-", i2);
writeln("<>0-", i1+i2);
end.