Pascal: Liczy dowolna sume liczb cyfry..

0

str(x,s);
wirte(copy(s,1,1).. itp
Jak zrobic dla okreslonej liczby to wiem, ale program ma dodawac cyfry obojetniej jakiej liczby np 39 : 3+9, 3455: 3+4+5+5, jak to zrobic ?... trzeba petle zrobic, najpierw zeby liczilo dlugosc cyfer a potem to jakos dodawalo, moze ktos pomoc ? ...

Pozdrawiam

0

Zamieszałeś na maxa. Chodzi o coś takiego??

var liczba,i:integer;
    strng:string;
begin
 liczba := 1234;
 str(liczba, strng);
 for i:=1 to length(strng) do
  if i=1 then
   write(strng[i])
  else
   write('+' + strng[i]);
end.
0

Tak oto mi chodzilo, tylko zeby jeszcze wyswietlal sume tych liczb na koncu, ale chyba sobie juz z tym poradze, ale dla poewnosci napiscie ;] ..

0

Tutaj chyba chodzi o sume cyfr, a nie o napis. Przynajmniej tak mi sie wydaje. A skoro tak to:

/* Wersja rekurencyjna */

function SumaCyfr(Liczba: Integer): Integer;
begin
  if Liczba = 0 then
    SumaCyfr := 0
  else
    SumaCyfr := Liczba mod 10 + SumaCyfr(Liczba div 10);
end;

/* Wersja iteracyjna */

function SumaCyfr(Liczba: Integer): Integer;
var
  Suma: Integer;
begin
  Suma := 0;
  repeat
    Suma := Suma + Liczba mod 10;
    Liczba := Liczba div 10;
  until Liczba = 0;
  SumaCyfr := Suma;
end;

W Delphi mozna by uzyc DivMod zamiast dwoch oddzielnych operacji. A w asm... to by wygladalo cudownie :P

0

Gadałem z kolesiem na gg - chodzi mu o to:

var liczba,i:integer;
    suma,l,err:integer;
    strng:string;
begin
 suma := 0;
 writeln('podaj liczbe');
 readln(liczba);
 str(liczba, strng);
 for i:=1 to length(strng) do begin
  if i=1 then
   write(strng[i])
  else
   write('+' + strng[i]);
  val(strng[i], l, err);
  suma := suma + l;
 end;
 str(suma, strng);
 writeln(#13,#10,'suma = ' + strng);
end.
0

Witam!

Mam małe pytanko. Ile cyfr ma zero? 1 czy 0?

Według mnie ma ono 1 cyfrę, ale połowa mojej klasy twierdzi inaczej. A na razie napisałam program, który właśnie stwierdza ze zero ma 1 cyfrę.

0
Emilly napisał(a)

Witam!

Mam małe pytanko. Ile cyfr ma zero? 1 czy 0?

Według mnie ma ono 1 cyfrę, ale połowa mojej klasy twierdzi inaczej. A na razie napisałam program, który właśnie stwierdza ze zero ma 1 cyfrę.

To jest pytanie chaczace filozofie.. ale 0 to cyfra wiec ma 1 cyfre :D... liczba 100 ma ile cyfr 1 czy 3 ? wedlug teorii twojej klasy to ma 1 cyfre bo 0 to nie cyfra :D.. ehhh -_-'

1 użytkowników online, w tym zalogowanych: 0, gości: 1