Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 27.10.2010, 18:21   #1
MrMorozko
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 115
Счастье Сложение двух цифр Delphi

ДОброе время суток Допустим дано двухзначное число и мне нужно сложить его первую цифру с последней! что мне нужно написать? спасибо
MrMorozko вне форума Ответить с цитированием
Старый 27.10.2010, 18:24   #2
fbus
Форумчанин
 
Аватар для fbus
 
Регистрация: 23.10.2008
Сообщений: 460
По умолчанию

либо перевести в string а потом в integer
либо поиграть с делением (делишь на 10, округляешь до целого и получаешь 1ю цифру и.т.д.)
ИМХО 1й способ проще
fbus вне форума Ответить с цитированием
Старый 27.10.2010, 18:33   #3
_-Re@l-_
C++, Java
Старожил
 
Аватар для _-Re@l-_
 
Регистрация: 10.04.2010
Сообщений: 2,665
По умолчанию

Код:
t:=IntToStr(a);
S:=StrToInt(S[0])+StrToInt(S[Length(S)];
Ну вот как-то так.
_-Re@l-_ вне форума Ответить с цитированием
Старый 27.10.2010, 18:47   #4
Kingdom_Reborn
Форумчанин
 
Регистрация: 21.10.2010
Сообщений: 130
По умолчанию

Код:
var
  x: Longint;
  FirstDigit, LastDigit: Byte;
begin
  ReadLn(x);
  LastDigit := x mod 10;
  while x <> 0 do
  begin
    FirstDigit := x mod 10;
    x := x div 10;
  end;
  WriteLn(FirstDigit + LastDigit);
end.
Kingdom_Reborn вне форума Ответить с цитированием
Старый 27.10.2010, 18:50   #5
MrMorozko
Форумчанин
 
Регистрация: 19.06.2009
Сообщений: 115
По умолчанию

Спасибо вам
MrMorozko вне форума Ответить с цитированием
Старый 27.10.2010, 18:52   #6
Onekey
Пользователь
 
Регистрация: 07.08.2010
Сообщений: 48
По умолчанию

Вот. Недавно эксперементировал. Способ конечно не самый лучший, и не много запутанный.

Код:
unit Unit1;

interface

uses
  Windows, Messages, SysUtils, Variants, Classes, Graphics, Controls, Forms,
  Dialogs, StdCtrls;

type
  TForm1 = class(TForm)
    Label1: TLabel;
    Label2: TLabel;
    Label3: TLabel;
    Label4: TLabel;
    Label5: TLabel;
    procedure FormCreate(Sender: TObject);
  private
  function DigitRoot (var DR_CHISLO : integer) : integer;
  function DigitSum (var DS_CHISLO : integer) : integer;
  public
    { Public declarations }
  end;

var
  Form1: TForm1;

implementation

{$R *.dfm}

{ TForm1 }

function TForm1.DigitRoot(var DR_CHISLO: integer): integer;
var tmp : integer;
begin
  tmp := DR_CHISLO;
    while tmp >= 10 do tmp := DigitSum(tmp);
  DigitRoot := tmp;
end;

function TForm1.DigitSum(var DS_CHISLO: integer): integer;
var tmp, sum, celoe, drob : integer;
begin
  sum := 0;
  tmp := DS_CHISLO;
    while tmp >= 10 do
      begin
        celoe := tmp div 10;
        drob := tmp mod 10;
        sum := sum + drob;
        tmp := celoe;
      end;
  sum := sum + tmp;
  DigitSum := sum;
end;

procedure TForm1.FormCreate(Sender: TObject);
var a, b, c, tmp : integer;
var N, S : integer;
begin
  N := 1000;
  S := 15;
  b := DigitRoot(N);
  c := DigitSum(N);
  a := N+1;
  while a <= 100000 do
    begin
      tmp := DigitSum(a);
      if tmp = S then break ;
      a := a+1;
    end;
  Label1.Caption := inttostr(b);
  label2.Caption := inttostr(c);
  label5.Caption := inttostr(a);
end;

end.
Onekey вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Сложение цифр в числе Onekey Помощь студентам 6 23.10.2010 17:21
сложение цифр в строке от 1 до 5 buba3230 Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 9 04.06.2009 23:53
сложение двух чисел pif Assembler - Ассемблер (FASM, MASM, WASM, NASM, GoASM, Gas, RosAsm, HLA) и не рекомендуем TASM 18 15.02.2009 12:51
сложение цифр densan Помощь студентам 9 19.10.2008 12:06
Сложение двух матриц Аркадий Помощь студентам 5 26.04.2008 15:22