Novo

Forum kao aplikacija na telefonu

Dodajte forum na početni ekran i koristite ga kao aplikaciju, sa menijem na dnu ekrana.

  • 8 odgovora
  • 6.063 pregleda

Najnovija ↓

Problem oko zadatka u pascalu.. 11.11.2007. u 13:01 · pre 231 mesec #1
Unosi se trocifreni broj,i treba odrediti da li su cifre tog broja u rastucem ili opadajucem poretku..

e sad,problem je u tome kako odrediti srednju cifru broja?za prvu i poslednju mi nije problem,niti za to kako da odredim da li je rastuci ili opadajuci poredak,samo mi ta srednja cifra zadaje muke..
Re: Problem oko zadatka u pascalu.. 11.11.2007. u 14:07 · pre 231 mesec #3
Code:

program pr_01;
var
  Ulaz : integer;
  cif1, cif2, cif3 : integer;
begin
  Readln(Ulaz);
  cif1 := Ulaz mod 10;
  cif2 := Ulaz div 10 mod 10;
  cif3 := ulaz div 100;
  writeln('jedinice:', cif1);
  writeln('desetice:', cif2);
  writeln('stotice:', cif3);
  readln;
end.


valjda je ovako. Pisem napamet.
Re: Problem oko zadatka u pascalu.. 18.11.2007. u 04:00 · pre 230 meseci #5
Može ovako:
Code:

program nekiTamo;
var broj, stotine, desetice, jedinice : integer;
begin
   readln(broj);
   stotine:=broj div 100;
   desetice:=(broj - stotine*100) div 10;
   jedinice:=broj - stotine*100 - desetice*10;
   writeln('stotine: ', stotine);
   writeln('desetice: ', desetice);
   writeln('jedinice: ', jedinice);
   readln;
end.


ili ovako:

Code:

   ...
   stotine:=broj div 100;
   broj:=broj mod 100;
   desetice:=broj div 10;
   jedinice:=broj mod 10;
   ...


ili, npr., ovako:

Code:

   ...
   stotine:=broj div 100;
   desetice:=(broj mod 100) div 10;
   jedinice:=(broj mod 100) mod 10 ;
   ...


Postoji gomila načina...
Re: Problem oko zadatka u pascalu.. 29.11.2007. u 02:41 · pre 230 meseci #7
Sry zbog off topica ali i ja imam problem u pascalu:p
Kako koristenjem jednog niza prebrojati kolko ima istih elemenata u tom nizu???
Re: Problem oko zadatka u pascalu.. 29.11.2007. u 09:25 · pre 230 meseci #8
Recimo da u petlji prođeš kroz niz,
gledajući svaki zaseban element
prođeš još jednom (ugneždena petlja) kroz elemente od početka ali samo do trenutne pozicije tražeći dali je trenutni element već jednom obrađen, te ako nije onda neki globalni brojač uvećaš za 1.

Na kraju oduzmeš taj brojač od broja elemenata u nizu i dobiješ broj duplikata.
Potpis
"The quieter you become, the more you are able to hear."
Blog | PowerCMS
Re: Problem oko zadatka u pascalu.. 30.11.2007. u 21:46 · pre 230 meseci
izmenjeno 1 put, poslednji put holononi 30.11.2007. u 22:10
  1. holononi30.11.2007. u 22:10zapis iz teksta poruke
#9
Program koji odredjuje broj pojedinih elemenata u nizu. Optimizaciju prepustam vama.

Code:

program niz;{holononi}
uses Crt;
const
     nMax = 10;
var
        a: array [1..nMax] of integer;
        b: array [1..nMax] of integer;
        i, j, nMin: integer;

begin
        writeln('--------------------------------');
        Randomize;
        nMin := -32767;
    {Pomocni marker minus beskonacno.
     Pretpostavka je da se nMin
     ne pojavljuje u nizu.}
        for i := 1 to nMax do
        begin
            a[i] := Random(nMax);{Kreiramo niz.}
            write('   ', a[i]);
        end;
        writeln;
        for i := 1 to nMax do
    {Razmotriti sve clanove niza}
        begin
            b[i] := 1;
        {Svaki element se javlja bar jednom u nizu.}
            if a[i] <> nMin then
        {Ako je neki prethodni jednak nMin
         tada je vec ubrojan}
            begin
               j := i + 1;
               while j <= nMax do
           {Posmatrati samo sledece clanove.}
               begin
                    if a[i] = a[j] then
            {Moze se desiti i da je a[j]=nMin,
             ali necemo to razmatrati.}
                    begin
                         b[i] := b[i] + 1;
                {Uvecaj brojac istih elemenat.}
                         a[j] := nMin;
        {Izbaciti tekuci element iz razmatranja.}
                    end;
                    j := j + 1;
               end;
            end;
        end;

        for i := 1 to nMax do
            if a[i] <> nMin then
               writeln( 'Broj ', a[i],
        ' se pojavljuje ',
             b[i], ' puta.' );
end.
Prijavite se da biste odgovorili u ovoj temi.PrijavaRegistracija

Premeštanje teme