Preskoči na glavno vsebino
Učilnica FRI 25/26
  • Domov
  • Koledar
  • Več
Sitewide search Zapri
Preklopi iskalni vnos
Slovenščina ‎(sl)‎
English ‎(en)‎ Slovenščina ‎(sl)‎ Македонски ‎(mk)‎ Русский ‎(ru)‎ 한국어 ‎(ko)‎
Trenutno uporabljate gostujoči dostop
Prijavite se
Učilnica FRI 25/26
Domov Koledar
Razširi vse Skrči vse
  1. Nadzorna plošča
  2. C
  3. Predavanja in vaje
  4. Naloge - 6. dan

Naloge - 6. dan

Zahteve zaključka
Rok za oddajo: ponedeljek, 2. oktober 2023, 23.59

Naloga 

a) Napiši program sklad.c za delo s skladom celih števil; program naj vsebuje funkcije init(), push(int x), pop() in isEmpty(). Funkcije main() tukaj ni.

b) Napiši interaktiven program testSklada.c, ki bo omogočal testiranje uporabe sklada. Program naj na zaslon izpiše seznam ukazov:

0 - konec programa
1 - dodaj element na sklad
2 - briši element s sklada
3 - izpiši vsebino sklada

nato naj počaka na uporabnikov vnos in primerno ukrepa.

c) Prilagodi funkcije v datoteki sklad.c tako, da bo program omogočal delo z več skladi hkrati. Program testSklada.c popravi tako, da bo najprej uporabnika vprašal, koliko skladov želi uporabljati, nato pa bo uporabniku omogočal, da med temi skladi preklaplja (dodaj možnost 4 - preklopi med skladi).

Namig: sklad implementiraj kot strukturo, v kateri hraniš tabelo in indeks, ki označuje vrh sklada; tabelo ustvarite v funkciji init(), velikost naj bo podana v enem od parametrov te funkcije. Vse funkcije napiši tako, da poleg ostalih prejmejo en dodaten parameter - strukturo sklad.

Dodatna (neobvezna) naloga

Napiši program rpn.c, ki prejme računski izraz v obrnjenem poljskem zapisu (reverse polish notation) in izračuna njegovo vrednost.

Primeri:

izraz                  RPN                        rezultat
-------------------------------------------------------------
(1+3)*4                1 3 + 4 *                  16
((3+1)*(5-1))^(7-5)    3 1 + 5 1 - * 7 5 - ^      256        
2*6+3*2+7              2 6 * 3 2 * + 7 +          25

Opomba: lahko predpostaviš, da so vse številke manjše od 10 (torej je številka ena števka).

Namig: uporabi funkcije za delo s skladom iz 1. naloge.

Trenutno uporabljate gostujoči dostop (Prijavite se)
Pridobi mobilno aplikacijo
Stran poganja Moodle
Obvestilo o avtorskih pravicah