Подсчитайте, сколько среди данных n чисел нулей, положительных чисел, отрицательных чисел. вводится число n, а затем n чисел. необходимо вывести сначала число нулей, затем число положительных и отрицательных чисел. c++
int main(){ int a,n=0; int k0=0; int kp=0; int kot=0; cin>>n; for(int i=0;i<n;i++){ cin>>a; if(a==0)k0++; if(a>0)kp++; if(a<0)kot++;} cout<<k0<<endl<<kp<<endl<<kot; cin.get(); cin.get(); return 0; }
Пример ввода: 4 0 -1 1 2 Пример вывода: 1 2 1
ella440
18.02.2023
// PascalABC.NET 3.0, сборка 1088 const n=9; m=7; var a:array[1..n,1..m] of integer; b:array[1..n] of boolean; i,j,k:integer; begin Randomize; Writeln('*** Исходный массив ***'); for i:=1 to n do begin k:=0; for j:=1 to m do begin a[i,j]:=Random(225)-112; Write(a[i,j]:5); if a[i,j]<0 Then Inc(k) end; Writeln; b[i]:=k>3 end; Writeln('*** Строки, содержащие больше 3 отрицательных элементов ***'); for i:=1 to n do if b[i] then Write(i,' '); Writeln end.
Расстояние от точки до начала координат находится как длина гипотенузы прямоугольного треугольника, катетами которого являются координаты точки. Поскольку нам нужны не сами расстояния, а лишь сравнить их, то можно сравнивать квадраты, чтобы не извлекать корня.
// PascalABC.NET 3.0, сборка 1088 var x1,x2,y1,y2,r1,r2:real; begin Write('Введите координаты первой точки: '); Read(x1,y1); Write('Введите координаты второй точки: '); Read(x2,y2); r1:=sqr(x1)+sqr(y1); r2:=sqr(x2)+sqr(y2); if r1>r2 then Writeln('Ближе вторая точка') else if r1<r2 then Writeln('Ближе первая точка') else Writeln('Точки равноудалены') end.
Тестовое решение: Введите координаты первой точки: 16.3 -11.7 Введите координаты второй точки: 15.8 12 Ближе вторая точка
#include <iostream>
using namespace std;
int main(){
int a,n=0;
int k0=0;
int kp=0;
int kot=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>a;
if(a==0)k0++;
if(a>0)kp++;
if(a<0)kot++;}
cout<<k0<<endl<<kp<<endl<<kot;
cin.get();
cin.get();
return 0;
}
Пример ввода:
4
0
-1
1
2
Пример вывода:
1
2
1