Private

Алгоритм решения данной задачи представлен в лекции №3

program Summa_cons;

{$APPTYPE CONSOLE}

Uses

SysUtils;

var m,k,n,j,i,s1,s2:integer;

ch:char;

Begin

Repeat

writeln (' enter n');

readln(n);

m:=n;

k:=0;

while m<>0 do

Begin

m:=m div 10;

k:=k+1;

End; // найдено количество

// цифр в записи числа

s1:=0;

s2:=0;

i:=1;

While n<>0 do

Begin

while i<=2 do

// Это вложенный цикл

// вычисления суммы двух младших цифр числа

Begin

j:=n mod 10;

n:=n div 10;

s1:=s1+j;

i:=i+1;

end;

if i<=(k-2) then

n:=n div 10

Else

Begin

j:=n mod 10;

s2:=s2+j;

// Это вычисляется сумма двух старших цифр

n:=n div 10;

end;

i:=i+1;

end;

Writeln( 'summa1=',s1,' Summa2=',s2);

writeln(' repeat?');

readln(ch);

until ch='n' ;

{ TODO -oUser -cConsole Main : Insert code here }

End.

Рис. 1 Результат решения задачи

Запись программы приведена и в визуальной среде Delphi.

Решение задачи выполняется событиями от нажатия соответствующих кнопок на окне формы программы.

unit Summa_1_n;

Interface

Uses

Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,

Dialogs, StdCtrls;

Type

TForm1 = class(TForm)

Label1: TLabel;

Edit1: TEdit;

Edit2: TEdit;

Edit3: TEdit;

Label2: TLabel;

Label3: TLabel;

Order: TButton;

Summa: TButton;

Button3: TButton;

Label4: TLabel;

Edit4: TEdit;

Label5: TLabel;

procedure OrderClick(Sender: TObject);

procedure SummaClick(Sender: TObject);

procedure FormCreate(Sender: TObject);

procedure Button3Click(Sender: TObject);

private

{ Private declarations }

Public

{ Public declarations }

end;

Var

Form1: TForm1;

k, n:integer;