ВУЗы и колледжи
помогите решить задачи в Delphi
1. Задана окружность. Проверить, лежит ли введенная пользователем точка внутри нее. 2. Вводится целое число, большее 8. Написать программу, которая будет раскладывать введенное число на числа 5 и 3 таким образом, чтобы количество пятерок в этом разложении было максимальным. 3.Найти все положительные четырехзначные числа, для которых одновременно выполняются следующие условия: 1) в его состав входят разные цифры; 2) разность двух чисел, составленных из первых двух цифр и двух последних, равна сумме его цифр. Задачу решить, используя в алгоритме наименьшее количество циклов. 4. Найти число "счастливых" билетов в катушке, состоящей из 1000000 билетов с шестизначными номерами. "Счастливым" считается билет, у которого суммы трех первых и трех последних цифр совпадают. 5. Найти все простые числа до 100.
1.
procedure TForm1.Button1Click(Sender: TObject);
begin
if sqr(strtofloat(edit1.Text))>= //R^2>=x^2+y^2 - тогда лежит, центр окр-ти совп. с началом координат
(sqr(strtofloat(edit2.Text))+sqr(strtofloat(edit3.Text)))
then showmessage('точка лежит на окружности')
else showmessage('точка не лежит на окружности')
end;
2.
procedure TForm1.Button1Click(Sender: TObject);
label lst,lex;
var i,s,n3,n5:integer;
begin
i:=strtoint(edit1.Text);
n3:=0;n5:=0;
lst: if frac(i/5)=0
then begin //число сразу делится на 5
n5:=trunc(i/5);
goto lex;
end
else begin
dec(i,3);
inc(n3);
goto lst;
end;
lex:label1.Caption:=edit1.Text+'=>';
if n5>0 then label1.Caption:=label1.Caption+' 5х'+inttostr(n5);;
if n3>0 then label1.Caption:=label1.Caption+' 3х'+inttostr(n3);;
end;
3.
procedure TForm1.Button1Click(Sender: TObject);
var i,t,n1,n2,n3,n4,ns:integer;s:string[4];c1,c2,c3,c4:char;
begin
for i:=1000 to 9999
do begin
application.ProcessMessages;
s:=inttostr(i);
c1:=s[1];c2:=s[2];c3:=s[3];c4:=s[4];
n1:=strtoint(s[1]);
n2:=strtoint(s[2]);
n3:=strtoint(s[3]);
n4:=strtoint(s[4]);
ns:=n1+n2+n3+n4;
if ((n1<>n2)and(n1<>n3)and(n1<>n4) and
(n2<>n3)and(n2<>n4) and
(n3<>n4)and
((abs(strtoint(c1+c2)-strtoint(c3+c4))=ns)or
(abs(strtoint(c2+c1)-strtoint(c3+c4))=ns)or
(abs(strtoint(c1+c2)-strtoint(c4+c3))=ns)))
then memo1.Lines.Add(inttostr(i));
end;
end;
4.
procedure TForm1.Button1Click(Sender: TObject);
var i,s13,s46,iok:integer;s:string[6];
begin
iok:=0;
button1.Caption:='подождите';
for i:=0 to 999999
do begin
s:=inttostr(i);
if i<=9 then s:='0'+s;
if i<=99 then s:='0'+s;
if i<=999 then s:='0'+s;
if i<=9999 then s:='0'+s;
if i<=99999 then s:='0'+s;
s13:=strtoint(s[1])+strtoint(s[2])+strtoint(s[3]);
s46:=strtoint(s[4])+strtoint(s[5])+strtoint(s[6]);
if s13=s46 then inc(iok);
end;
button1.Caption:=inttostr(iok);
end;
5.
procedure TForm1.Button1Click(Sender: TObject);
var i,j:integer;pr:boolean;
begin
memo1.Lines.Add('1');
memo1.Lines.Add('2');
for i:=3 to 100
do begin
pr:=true;
for j:=2 to i-1 do if frac(i/j)=0 then begin
pr:=false;
break;
end;
if pr=true
then memo1.Lines.Add(inttostr(i));
end;
end;
procedure TForm1.Button1Click(Sender: TObject);
begin
if sqr(strtofloat(edit1.Text))>= //R^2>=x^2+y^2 - тогда лежит, центр окр-ти совп. с началом координат
(sqr(strtofloat(edit2.Text))+sqr(strtofloat(edit3.Text)))
then showmessage('точка лежит на окружности')
else showmessage('точка не лежит на окружности')
end;
2.
procedure TForm1.Button1Click(Sender: TObject);
label lst,lex;
var i,s,n3,n5:integer;
begin
i:=strtoint(edit1.Text);
n3:=0;n5:=0;
lst: if frac(i/5)=0
then begin //число сразу делится на 5
n5:=trunc(i/5);
goto lex;
end
else begin
dec(i,3);
inc(n3);
goto lst;
end;
lex:label1.Caption:=edit1.Text+'=>';
if n5>0 then label1.Caption:=label1.Caption+' 5х'+inttostr(n5);;
if n3>0 then label1.Caption:=label1.Caption+' 3х'+inttostr(n3);;
end;
3.
procedure TForm1.Button1Click(Sender: TObject);
var i,t,n1,n2,n3,n4,ns:integer;s:string[4];c1,c2,c3,c4:char;
begin
for i:=1000 to 9999
do begin
application.ProcessMessages;
s:=inttostr(i);
c1:=s[1];c2:=s[2];c3:=s[3];c4:=s[4];
n1:=strtoint(s[1]);
n2:=strtoint(s[2]);
n3:=strtoint(s[3]);
n4:=strtoint(s[4]);
ns:=n1+n2+n3+n4;
if ((n1<>n2)and(n1<>n3)and(n1<>n4) and
(n2<>n3)and(n2<>n4) and
(n3<>n4)and
((abs(strtoint(c1+c2)-strtoint(c3+c4))=ns)or
(abs(strtoint(c2+c1)-strtoint(c3+c4))=ns)or
(abs(strtoint(c1+c2)-strtoint(c4+c3))=ns)))
then memo1.Lines.Add(inttostr(i));
end;
end;
4.
procedure TForm1.Button1Click(Sender: TObject);
var i,s13,s46,iok:integer;s:string[6];
begin
iok:=0;
button1.Caption:='подождите';
for i:=0 to 999999
do begin
s:=inttostr(i);
if i<=9 then s:='0'+s;
if i<=99 then s:='0'+s;
if i<=999 then s:='0'+s;
if i<=9999 then s:='0'+s;
if i<=99999 then s:='0'+s;
s13:=strtoint(s[1])+strtoint(s[2])+strtoint(s[3]);
s46:=strtoint(s[4])+strtoint(s[5])+strtoint(s[6]);
if s13=s46 then inc(iok);
end;
button1.Caption:=inttostr(iok);
end;
5.
procedure TForm1.Button1Click(Sender: TObject);
var i,j:integer;pr:boolean;
begin
memo1.Lines.Add('1');
memo1.Lines.Add('2');
for i:=3 to 100
do begin
pr:=true;
for j:=2 to i-1 do if frac(i/j)=0 then begin
pr:=false;
break;
end;
if pr=true
then memo1.Lines.Add(inttostr(i));
end;
end;
Вообще-то немного в тупике, но в 3-м заданиии подсказка - исспользовать оператор циклов ( не знаю какой он в Паскале, в С++ это for ; )
Второе задание, недолго думая ) , это 53 )
Первое задание использую оператор проверки условия ) В С++ ,это if (условие ) else ((иначе) ) - тоже условие ...
Ну и остальные также на проверку условия )
Второе задание, недолго думая ) , это 53 )
Первое задание использую оператор проверки условия ) В С++ ,это if (условие ) else ((иначе) ) - тоже условие ...
Ну и остальные также на проверку условия )
че эт за предмет?
Александр Тарасов
Программирование
Похожие вопросы
- помогите решить задачи по юриспруденции
- помогите решить задачу по физике срочно пожалуйста
- помогите решить задачу по гражданскому праву
- Помогите решить задачу по теории вероятности
- помогите решить задачи по биологии
- Помогите решить задачу
- Добрый день. Помогите решить задачу из контрольной по высшей математике.
- Помогите решить задачу на ассемблере
- Помогите решить задачу по электро технике
- Помогите решить задачу по бух. учуту.. плиз ?:,(