• Курсы Академии Кодебай, стартующие в мае - июне, от команды The Codeby

    1. Цифровая криминалистика и реагирование на инциденты
    2. ОС Linux (DFIR) Старт: 16 мая
    3. Анализ фишинговых атак Старт: 16 мая Устройства для тестирования на проникновение Старт: 16 мая

    Скидки до 10%

    Полный список ближайших курсов ...

Вопрос по Pascal

  • Автор темы Guest
  • Дата начала
G

Guest

Вопрос такой:
как присвоить к переменной R номер четверти плоскости в которой находится точка с координатами x и y(x,y не равны нулю).
Заранее благодарю! <_<
 

valentofer

Active member
10.11.2007
37
0
BIT
0
Ну если точка в 1 четверти то: R=1;
если точка в 2 четверти то: R=2;
если точка в 3 четверти то: R=3;
если точка в 4 четверти то: R=4;

ЗЫ, :D Какой вопрос , такой ответ!

Попоняятней изложи суть! <_<
 
G

Guest

Может и правда я немного не точно вопос изложтл,
надо ввести координаты x,y и по ним программа должна определить в какой из 4 плоскостей системы координат будет лежать точка(y=1,x=3:=1 плоскость). <_<
 

valentofer

Active member
10.11.2007
37
0
BIT
0
Напомни плиз как нумеруются плоскости? не так?
см рис! ________________.JPG

всмысле в каком порядке?
 

valentofer

Active member
10.11.2007
37
0
BIT
0
Ну тады давай матреть!
если у тя X>0 и Y>0 начит точка в 1 плоскости!
если у тя X>0 и Y<0 начит точка в 2 плоскости!
если у тя X<0 и Y<0 начит точка в 3 плоскости!
если у тя X<0 и Y>0 начит точка в 4 плоскости!

Начит та Пасе эта так: (на пасе писал давно, так что могут бы ть помарки)
Код:
var
x,y,r: integer;
begin
write('введите X='); Readln(x);
write('введите Y='); Readln(y);
if x>0 then
if y>0 then r=1; // Четверть 
if x>0 then
if y<0 then r=2; // Четверть
if x<0 then
if y<0 then r=3; // Четверть
if x<0 then
if y>0 then r=4; // Четверть
writeln('Четверть = ',r:5:2);
readln;
end;
Вроде так!
неоткажусь от +
 
G

Guest

Ещё один вопрос:
Какую надо формулу составить, что бы решить такую задачу (Помогите пожалуйста с формулой!)
Напечатать в возростающем порядке все трёхзначные числа, в десятичной записи в которых нет одинаковых цифр (операцию деления не использоватЬ!). :D
 
A

Ashot

Program jghghjhg;
var
a,b,c:byte;
begin
for a:=1 to 9 do
for b:=0 to 9 do
for c:=0 to 9 do
write(100*a+10*b+c,' ');
readln;
end.

Не знаю, че за формула, но так вроде как работает.
 
H

HaitiBoy

Вынужден не согласиться с valentofer, ЖэКЫЧ. Правильно нумеруются плоскости: "Оси координат делят плоскость на четыре четверти (квадранта). Первой четверти считается четверть между положительной полуосью OX и положительной полуосью OY. Далее четверти нумеруются по порядку против часовой стрелки".
 
G

Guest

Спасибо, вовремя предупредил, а то завтра уже поздно было бы исправлять ошибку! :)
 
S

Scorpicora

Еще кое-что неточно в коде, который написал Ashot. Так как в числах не должно быть одинаковых цифр, то вот этот фрагмент:
for a:=1 to 9 do
for b:=0 to 9 do
for c:=0 to 9 do
write(100*a+10*b+c,' ');

станет таким:
for a:=1 to 9 do
for b:=0 to 9 do
for c:=0 to 9 do
if (a<>b)and(a<>c)and(b<>c) then write(100*a+10*b+c,' ');
 
A

Ashot

Для: Scorpicora
Ой :eek: Точно. Просто, когда переписывал с паскаля забыл написать.
Для: ЖэКЫЧ
I'm sorry.
 
N

Nusen'ka

Помогите пожалуйста!)
Дана строка символов. Определить, какое слово - максимальной или минимальной длины - находится ближе к концу строки
 
G

Guest

Для: Ashot
Всё наормально. У меня ещё есть денёк что бы всё исправить!
Для: Scorpicora
Большое спасибо, а то у меня всё время что то не сходилось! :(
 
H

HaitiBoy

Программа находит самое длинное слово в строке:

Код:
PROGRAM Str;
uses crt;
var s1,s2:string;
k,max:integer;
BEGIN
Clrscr;
writeln('Program will type the longest word in the text.');
readln(s1);
s1:=concat(s1,' ');
max:=0;
While s1<>'' do
begin
k:=pos(' ',s1);
if k<>1 then
if max<k then
begin
s2:=copy(s1,1,k-1);
max:=k-1;
end;
delete(s1,1,k);
end;
writeln('Your longest word is: ',s2);
readkey;
END.

Труда, думаю, не составит добавить нахождение слова с минимальной длинной:(
 
A

Ashot

Народ, а как из паскаля код вставлять сюдама.
 
A

Ashot

Код:
Program jkjhcjshd;
var
str:string;
i,minn,maxn,p1,p2,min,max,a,b:byte;
Begin
writeln('Vvedite stroku');
readln(str);
Insert(' ',str,length(str)+1);
min:=255;
max:=0;
p2:=0;
for i:=1 to length(str) do
begin
if str[i]=' ' then
begin
p1:=i;
if p1-p2>max then
begin
max:=p1-p2;
maxn:=i;
end;
if p1-p2<min then
begin
min:=p1-p2;
minn:=i;
end;
p2:=i;
end;
end;
if maxn>minn then
writeln('Maximim')
else
if minn>maxn then
writeln('Minimum')
else
writeln('Odinakovo');
readln;
End.

Как-то нехорошо вставилось...

Для: [b]HaitiBoy[/b]
По ходу здесь не обязательно искать сам макс/мин элемент.Можно просто найти номер их конца.
 
Мы в соцсетях:

Обучение наступательной кибербезопасности в игровой форме. Начать игру!