Трудно сказать не видя структуры твоего калькулятора. Если у тебя два поля для ввода чисел (edit1 и edit2), а результат записываешь в Memo1 (кстати, а зачем именно тип Memo?), то можно сделать следующим образом (пример для кнопок "+" и "-")
procedure TForm1.PlusClick(Sender: TObject); var x,y:real; r:string; begin val(edit1.Text,x); val(edit2.Text,y); str(x+y,r); Memo1.Lines[0]:=edit1.Text+'+'+edit2.Text+'='+r; end;
procedure TForm1.MinusClick(Sender: TObject); var x,y:real; r:string; begin val(edit1.Text,x); val(edit2.Text,y); str(x-y,r); Memo1.Lines[0]:=edit1.Text+'-'+edit2.Text+'='+r; end;
Program Robiertmusin; uses crt; const n = 15; type MyArray = array [1..n,1..n] of integer;
procedure ArrayOutput(A: MyArray); var i,j: integer; begin for i := 1 to n do begin for j:= 1 to n do write(A[i,j]:4, ' '); writeln; end; writeln; end;
procedure RowSort(var A: MyArray; Nom: integer); var i, j, temp: integer; begin for i := 1 to n-1 do for j := i+1 to n do if A[nom,i]>A[nom,j] then begin temp:=A[nom,i]; A[nom,i]:=A[nom,j]; A[nom,j]:=temp; end; writeln(nom,'-я строка упорядочена'); end;
var mass:MyArray; i,j:integer; begin writeln('В матрице целых чисел А (n*n) программа упорядочивает те строки,'); writeln('в которых диагональные элементы не содержат семерок'); {Создаём начальный массив и выводим его} randomize; for i := 1 to n do for j:= 1 to n do mass[i,j]:=random(20); ArrayOutput(mass); {Просматриваем строки} for i := 1 to n do begin if (mass[i,i]<>7) and (mass[n-i+1,n-i+1]<>7) then RowSort(mass, i); end; {Выводим итоговый массив} writeln('Упорядоченный массив: '); ArrayOutput(mass); end.
0,0(0 оценок)
Полный доступ
Позволит учиться лучше и быстрее. Неограниченный доступ к базе и ответам от экспертов и ai-bota
Оформи подписку