~n/3 достаточно.
Бросаем первый с этажа номер n/3. Если разбился, то бросаем второй по очереди с 1 этажа, потом со 2, ... до n/3 пока не разобьется. Так найдем этаж.
Если первый шар не разбился. бросаем его с этажа 2n/3. Если тут разбился, то бросаем второй с этажа n/3+1, потом с n/3+2, ... пока не разобьется.
Если 1 шар при падении с 2n/3 не разбился, то бросаем его с 2n/3+1, потом с 2n/3+2, ... пока не разобьется.
Самая популярная CorelDraw.
Так же хорошие программы: Adobe Streamline, PageMaker.
Unit Unit1;
interface
uses Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms, Dialogs, StdCtrls;
type TForm1 = class(TForm) Button1: TButton; Edit1: TEdit; Edit2: TEdit; Label1: TLabel;
procedure Button1Click(Sender: TObject);
private { Private declarations }
public { Public declarations } end;
var Form1: TForm1;
implementation
{$R *.dfm}
procedure TForm1.Button1Click(Sender: TObject);
begin
try
label1.Caption:=FloatToStr(StrToFloat(Edit1.Text)/StrToFloat(Edit2.Text));
except
On E : EZeroDivide do
ShowMessage('Деление на 0 запрещено : ');
end;
end;
end.<span>
</span>
Добавлять, удалять, вносить данные, удалять данные, редактировать (изменять содержимое), форматировать (изменять внешний вид)
<h2>Задание</h2>
43₈ + 56₈ = x₂
<h2>Решение</h2>
Возможно, сначала хотелось бы сложить эти числа и перевести. Но есть одно но - система счисления с основанием 8 (то есть содержит в себе 8 чисел - [0..7]). При сложении данных чисел результат будет иметь цифры, явно выходящие за пределы допустимых чисел (а именно 40 + 50 = 90 - цифра 9 выходит из промежутка [0..7]). Поэтому переведём всё в десятичную систему счисления, а оттуда будем прыгать во вторую.
43₈ = 4 · 8¹ + 3 · 8⁰ = 4 · 8 + 3 · 1 = 35₁₀
56₈ = 5 · 8¹ + 6 · 8⁰ = 5 · 8 + 6 · 1 = 40 + 6 = 46₁₀
35₁₀ + 46₁₀ = 81₁₀
<h2>Ответ</h2>
81₁₀ = 1010001₂