Определить, сколько из N точек, заданных случайно, попали в каждую координатную четверть - Pascal
Формулировка задачи:
Написать функцию, определяющую, какой координатной четверти принадлежит точка с заданными координатами. Используя ее определить, сколько из N точек, заданных случайно, попали в каждую координатную четверть.
Где-то с циклом напортачил. Принимает только последнее число.
var x,y: real; //I,II,III,IV: real; I:=0; II:=0; III:=0; IV:=0; begin x:=random(-100,100); y:=random(-100,100); writeln(x); writeln(y); if (x > 0) and (y > 0) then begin write ('Номер четверти координатной плоскости: '); writeln ('I'); I:=I+1; end else if (x < 0) and (y > 0) then begin write ('Номер четверти координатной плоскости: '); writeln ('II'); II:=II+1; end else if (x < 0) and (y < 0) then begin write ('Номер четверти координатной плоскости: '); writeln ('III'); III:=III+1; end else if (x > 0) and (y < 0) then begin write ('Номер четверти координатной плоскости: '); writeln ('IV'); IV:=IV+1; end else writeln ('-. Точка лежит на оси.'); readln; begin writeln ('Кол-во точек в I четвери: '); writeln (I); writeln ('Кол-во точек в II четвери: '); writeln (II); writeln ('Кол-во точек в III четвери: '); writeln (III); writeln ('Кол-во точек в IV четвери: '); writeln (IV); end; repeat until x=100; end.
Решение задачи: «Определить, сколько из N точек, заданных случайно, попали в каждую координатную четверть»
textual
Листинг программы
var k, n: integer; x, y: real; I, II, III, IV: integer; begin I := 0; II := 0; III := 0; IV := 0; write('Сколько точек обработать? '); readln(n); for k := 1 to n do begin x := random(-100, 100); y := random(-100, 100); writeln(x); writeln(y); if (x > 0) and (y > 0) then begin write('Номер четверти координатной плоскости: '); writeln('I'); I := I + 1; end else if (x < 0) and (y > 0) then begin write('Номер четверти координатной плоскости: '); writeln('II'); II := II + 1; end else if (x < 0) and (y < 0) then begin write('Номер четверти координатной плоскости: '); writeln('III'); III := III + 1; end else if (x > 0) and (y < 0) then begin write('Номер четверти координатной плоскости: '); writeln('IV'); IV := IV + 1; end else writeln('-. Точка лежит на оси.'); end; writeln('Кол-во точек в I четвери: '); writeln(I); writeln('Кол-во точек в II четвери: '); writeln(II); writeln('Кол-во точек в III четвери: '); writeln(III); writeln('Кол-во точек в IV четвери: '); writeln(IV); end.
Объяснение кода листинга программы
- Объявляются переменные
k
,n
,x
,y
,I
,II
,III
,IV
. - Инициализируются переменные
I
,II
,III
,IV
нулевым значением. - Пользовательский ввод количества точек
n
. - Запускается цикл от 1 до
n
. - Генерируются случайные значения координат
x
иy
. - Выводится значение
x
. - Выводится значение
y
. - Проверка условий принадлежности точки к одной из четвертей координатной плоскости и увеличение соответствующей переменной I, II, III или IV на 1 в зависимости от четверти, в которую попала точка.
- Если точка лежит на одной из осей, выводится сообщение
-. Точка лежит на оси
. - Выводится количество точек в каждой из четвертей координатной плоскости.
ИИ поможет Вам:
- решить любую задачу по программированию
- объяснить код
- расставить комментарии в коде
- и т.д