С использованием оператора if: #include <iostream> using namespace std; int main(){ int x, y; setlocale(LC_ALL, "Russian"); cout << "Введите координату X: "; cin >> x; cout << "Введите координату Y: "; cin >> y; if ((x > 0) && (y > 0)) { cout << "Точка находится в I четверти."; } else if ((x < 0) && (y > 0)) { cout << "Точка находится в II четверти."; } else if ((x < 0) && (y < 0)) { cout << "Точка находится в III четверти."; } if ((x > 0) && (y < 0)) { cout << "Точка находится в IV четверти."; } system("pause"); return 0;}
С использованием тернарного оператора: #include <iostream> using namespace std; int main(){ int x, y; setlocale(LC_ALL, "Russian"); cout << "Введите координату X: "; cin >> x; cout << "Введите координату Y: "; cin >> y; x > 0 && y > 0 ? cout << "Точка находится в I четверти" << endl : cout; x < 0 && y > 0 ? cout << "Точка находится в II четверти" << endl : cout; x < 0 && y < 0 ? cout << "Точка находится в III четверти" << endl : cout; x > 0 && y < 0 ? cout << "Точка находится в IV четверти" << endl : cout; system("pause"); return 0; }
Насчет тернарного не полностью уверен, так как вообще им не пользуюсь, хотя ответ выдает верный. Раз вы сказали, что они не могут быть 0, то учитывать, что точки могут лежать на осях или в начале координат не буду.
Я не стану указывать эпитетов к своему коду, пусть он сам скажет за себя. Алгоритм такой: просматриваем массив от конца к началу. И завершаем работу, как только встретим отрицательный элемент. А если так и не встретим до начала массива, значит таких элементов в массиве нет.
const n=20; { размер массива } var a:array[1..n] of integer; i:integer; found:boolean; begin Randomize; Writeln('Элементы массива'); for i:=1 to n do begin a[i]:=Random(21)-10; { случайное число на интервале [-10;10] } Write(a[i]:4) end; Writeln; { собственно задание } i:=n; repeat found:=(a[i]<0); Dec(i) until (i=0) or found; if found then Writeln('Номер элемента равен ',i+1) else Writeln('Отрицательных элементов нет') end.
#include <iostream>
using namespace std;
int main(){
int x, y;
setlocale(LC_ALL, "Russian");
cout << "Введите координату X: ";
cin >> x;
cout << "Введите координату Y: ";
cin >> y;
if ((x > 0) && (y > 0)) {
cout << "Точка находится в I четверти.";
} else if ((x < 0) && (y > 0)) {
cout << "Точка находится в II четверти.";
} else if ((x < 0) && (y < 0)) {
cout << "Точка находится в III четверти.";
} if ((x > 0) && (y < 0)) {
cout << "Точка находится в IV четверти.";
}
system("pause");
return 0;}
С использованием тернарного оператора:
#include <iostream>
using namespace std;
int main(){
int x, y;
setlocale(LC_ALL, "Russian");
cout << "Введите координату X: ";
cin >> x;
cout << "Введите координату Y: ";
cin >> y;
x > 0 && y > 0 ? cout << "Точка находится в I четверти" << endl : cout;
x < 0 && y > 0 ? cout << "Точка находится в II четверти" << endl : cout;
x < 0 && y < 0 ? cout << "Точка находится в III четверти" << endl : cout;
x > 0 && y < 0 ? cout << "Точка находится в IV четверти" << endl : cout;
system("pause");
return 0;
}
Насчет тернарного не полностью уверен, так как вообще им не пользуюсь, хотя ответ выдает верный. Раз вы сказали, что они не могут быть 0, то учитывать, что точки могут лежать на осях или в начале координат не буду.
Алгоритм такой: просматриваем массив от конца к началу. И завершаем работу, как только встретим отрицательный элемент. А если так и не встретим до начала массива, значит таких элементов в массиве нет.
const
n=20; { размер массива }
var
a:array[1..n] of integer;
i:integer;
found:boolean;
begin
Randomize;
Writeln('Элементы массива');
for i:=1 to n do begin
a[i]:=Random(21)-10; { случайное число на интервале [-10;10] }
Write(a[i]:4)
end;
Writeln;
{ собственно задание }
i:=n;
repeat
found:=(a[i]<0);
Dec(i)
until (i=0) or found;
if found then Writeln('Номер элемента равен ',i+1)
else Writeln('Отрицательных элементов нет')
end.
Тестовое решение:
Элементы массива
-3 5 -2 3 2 -2 -5 7 9 -3 1 -2 -1 -6 1 -6 2 8 7 1
Номер элемента равен 16