procedure hase(var k,n,max:integer); //сама последовательность begin if not(odd(n)) then n:=n div 2 else n:=n*3+1; //условие про чётность writeln(n); //вывод нового члена последовательности inc(k); //увеличение значения счётчика шагов if max<n then max:=n; //поиск вершины end;
procedure start(var k,n,max:integer); //название процедуры намекает begin readln(n); k:=0; writeln('Seq:'); max:=integer.MinValue; while n<>1 do hase(k,n,max); writeln('Шаги:',k); writeln('Вершина:',max); end; begin start(k,n,max); end. Пример ввода: 6 Пример вывода: Seq: 3 10 5 16 8 4 2 1 Шаги:8 Вершина:16
Var dat:DateTime; myForm:Form; myButton:Button; myTextBox:TextBox;
procedure MyButtonClick(sender:Object;e:EventArgs); begin {при каждом нажатии на кнопку значение dat обновляется и выводится в текстовое поле} dat:=datetime.Now; myTextBox.Text:=dat.ToString; end; begin myForm:=new Form; //создание объекта - формы myform.Left:=500; myform.top:=500; myform.AutoSize:=true; myform.Width:=300; myform.Height:=100; myTextBox:=new TextBox; //создание объекта - текстового поля myTextBox.Left:=80; myTextBox.Top:=40; myTextBox.Enabled:=true; myTextBox.Width:=105; myTextBox.Height:=100; myTextBox.MaxLength:=16; myTextBox.ReadOnly:=false; myTextBox.Visible:=true; myButton:=new Button; //создание объекта - кнопки myButton.Text:='Now'; myButton.Left:=80; myButton.top:=80; myButton.AutoSize:=true; myForm.Controls.Add(myButton); //вешаем на форму кнопку и поле myForm.Controls.Add(myTextBox); myButton.click+=MyButtonClick; //присваиваем событие при нажатии на кнопку Application.Run(myForm); end.
Var
k,n,max:integer;
procedure hase(var k,n,max:integer); //сама последовательность
begin
if not(odd(n)) then n:=n div 2 else n:=n*3+1; //условие про чётность
writeln(n); //вывод нового члена последовательности
inc(k); //увеличение значения счётчика шагов
if max<n then max:=n; //поиск вершины
end;
procedure start(var k,n,max:integer); //название процедуры намекает
begin
readln(n);
k:=0;
writeln('Seq:');
max:=integer.MinValue;
while n<>1 do
hase(k,n,max);
writeln('Шаги:',k);
writeln('Вершина:',max);
end;
begin
start(k,n,max);
end.
Пример ввода:
6
Пример вывода:
Seq:
3
10
5
16
8
4
2
1
Шаги:8
Вершина:16
uses
system,system.Windows.Forms;
Var
dat:DateTime;
myForm:Form;
myButton:Button;
myTextBox:TextBox;
procedure MyButtonClick(sender:Object;e:EventArgs);
begin {при каждом нажатии на кнопку значение dat обновляется и выводится в текстовое поле}
dat:=datetime.Now;
myTextBox.Text:=dat.ToString;
end;
begin
myForm:=new Form; //создание объекта - формы
myform.Left:=500;
myform.top:=500;
myform.AutoSize:=true;
myform.Width:=300;
myform.Height:=100;
myTextBox:=new TextBox; //создание объекта - текстового поля
myTextBox.Left:=80;
myTextBox.Top:=40;
myTextBox.Enabled:=true;
myTextBox.Width:=105;
myTextBox.Height:=100;
myTextBox.MaxLength:=16;
myTextBox.ReadOnly:=false;
myTextBox.Visible:=true;
myButton:=new Button; //создание объекта - кнопки
myButton.Text:='Now';
myButton.Left:=80;
myButton.top:=80;
myButton.AutoSize:=true;
myForm.Controls.Add(myButton); //вешаем на форму кнопку и поле
myForm.Controls.Add(myTextBox);
myButton.click+=MyButtonClick; //присваиваем событие при нажатии на кнопку
Application.Run(myForm);
end.