Informatică, întrebare adresată de Htdfguh, 9 ani în urmă

Scrieți un program Pascal, urgent vă rog mult
fie dat tabloul a [1..100] numere întregi. determinați suma numerelor care constau din aceeași cifra


boiustef: ce facem?

Răspunsuri la întrebare

Răspuns de boiustef
1

Răspuns:

program SumaCuCifreEgale;

type tablou=array[1..100]of integer;

var t:tablou; n,suma,i,num,cif,ultimacif:integer; egale:boolean;

begin

 write('dati nr. de elemente, n='); read(n);

 writeln('introdu ',n,' numere intregi:');

 for i:=1 to n do

   read(t[i]);

 suma:=0;  

 for i:=1 to n do

    begin

      num:=t[i];

      ultimacif:=num mod 10;

      num:=num div 10;

      egale:=true;

      while (num>0) do

        begin

          cif:=num mod 10;

          if cif<>ultimacif then egale:=false;

          num:=num div 10;

        end;

      if egale then suma:=suma+t[i];

     end;

  writeln('suma=',suma);

end.

Explicație:


Htdfguh: Eu sunt de acord cu părerea dvs, dar va rog frumos sa ma ajuți sa rozolvati aceasta problema cu ajutorul unei proceduri sau function(asa mi-a dat profa)
Htdfguh: Va rog mult,
boiustef: de ce nu ai scris din start despre asta???
boiustef: dar cum acum sa redactez?? artrebui sa anulezi rspunsul meu... raporteaza-l ca abuz, raspuns necorespunzator... dar ar trebui sa redactezi enuntul problemei, de altfel raspunsul corespunde acelui enunt...
Htdfguh: Voi adaugă o alta întrebare, va rog sa întrați și sa ma ajutați. Va mulțumesc muult din sufleet
Htdfguh: Am pus
Htdfguh: Dar acolo unde if egale then suma.... Nu inteleg
boiustef: ai pus intrebare?
boiustef: pentru fiecare numar introdus se afla ultima cifra. si lui egale ii dam true
Apoi cu while aflam celelalte cifre si daca macar odata cifra nu va fi egala cu ultima atunci egale=false
boiustef: La iesirea din while verificam valoarea lui egale, si daca egale are true atunci numarul introdus il adaugam la suma
Alte întrebări interesante