Thursday, 28.03.2024, 8:56 PM
Welcome Guest | RSS
Main | News | Sign Up | Login
Search
Menu
4e
Main » 2012 » June » 12 » Napokon gotovo! JUHU!
11:39 PM
Napokon gotovo! JUHU!
program Konfiguracija;
uses crt;
type pokazivac=^struktura;
     struktura=record
     {Maticna varijable}
     mat:integer;
     nm1:string;
     nm2:string;
     nm3:string;
     nm4:string;
     nms1:string;
     nms2:string;
     nms3:string;
     nms4:string;
     nmc1:integer;
     nmc2:integer;
     nmc3:integer;
     nmc4:integer;
     socketm1:string;
     socketm2:string;
     socketm3:string;
     socketm4:string;
     {Procesor varijable}
     proc:integer;
     np1:string;
     np2:string;
     np3:string;
     np4:string;
     nps1:string;
     nps2:string;
     nps3:string;
     nps4:string;
     npc1:integer;
     npc2:integer;
     npc3:integer;
     npc4:integer;
     socketp1:string;
     socketp2:string;
     socketp3:string;
     socketp4:string;
     {Graficka varijable}
     graf:integer;
     ng1:string;
     ng2:string;
     ng3:string;
     ng4:string;
     ngs1:string;
     ngs2:string;
     ngs3:string;
     ngs4:string;
     ngc1:integer;
     ngc2:integer;
     ngc3:integer;
     ngc4:integer;
     {RAM varijable}
     ram:integer;
     nr1:string;
     nr2:string;
     nrs1:string;
     nrs2:string;
     nrc1:integer;
     nrc2:integer;
     {Disk varijable}
     di:integer;
     nd1:string;
     nd2:string;
     nds1:string;
     nds2:string;
     ndc1:integer;
     ndc2:integer;
     {Napajanje varijable}
     nap:integer;
     nn1:string;
     nn2:string;
     nns1:string;
     nns2:string;
     nnc1:integer;
     nnc2:integer;
     {Pokazivac}
     p:pokazivac;

end;

var trenutni,pocetni,prethodni:pokazivac;
    a,b,c,d,e,i,x,y,z:integer;
    ms,p1s,p2s,p3s,p4s:string;

{PROCEDURE ZA UNOS NOVIH KOMPONENATA}
procedure dodajmat;
begin
  clrscr();
  writeln('UNOS NOVIH MATICNIH PLOCA (KOLICINA - 4)');
  writeln('Socketi: A - AMD, I - INTEL');
  writeln('======');
  write('Maticna ploca 1 => ');
  readln(trenutni^.nm1);
  write('Socket (A/I) => ');
  readln(trenutni^.socketm1);
  write('Specifikacija => ');
  readln(trenutni^.nms1);
  write('Cijena => ');
  readln(trenutni^.nmc1);
  writeln('');
  write('Maticna ploca 2 => ');
  readln(trenutni^.nm2);
  write('Socket (A/I) => ');
  readln(trenutni^.socketm2);
  write('Specifikacija => ');
  readln(trenutni^.nms2);
  write('Cijena => ');
  readln(trenutni^.nmc2);
  writeln('');
  write('Maticna ploca 3 => ');
  readln(trenutni^.nm3);
  write('Socket (A/I) => ');
  readln(trenutni^.socketm3);
  write('Specifikacija => ');
  readln(trenutni^.nms3);
  write('Cijena => ');
  readln(trenutni^.nmc3);
  writeln('');
  write('Maticna ploca 4 => ');
  readln(trenutni^.nm4);
  write('Socket (A/I) => ');
  readln(trenutni^.socketm4);
  write('Specifikacija => ');
  readln(trenutni^.nms4);
  write('Cijena => ');
  readln(trenutni^.nmc4);
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

procedure dodajproc;
begin
  clrscr();
  writeln('UNOS NOVIH PROCESORA (KOLICINA - 4)');
  writeln('Socketi: A - AMD, I - INTEL');
  writeln('======');
  write('Procesor 1 => ');
  readln(trenutni^.np1);
  write('Socket (A/I) => ');
  readln(trenutni^.socketp1);
  write('Specifikacija => ');
  readln(trenutni^.nps1);
  write('Cijena => ');
  readln(trenutni^.npc1);
  writeln('');
  write('Procesor 2 => ');
  readln(trenutni^.np2);
  write('Socket (A/I) => ');
  readln(trenutni^.socketp2);
  write('Specifikacija => ');
  readln(trenutni^.nps2);
  write('Cijena => ');
  readln(trenutni^.npc2);
  writeln('');
  write('Procesor 3 => ');
  readln(trenutni^.np3);
  write('Socket (A/I) => ');
  readln(trenutni^.socketp3);;
  write('Specifikacija => ');
  readln(trenutni^.nps3);
  write('Cijena => ');
  readln(trenutni^.npc3);
  writeln('');
  write('Procesor 4 => ');
  readln(trenutni^.np4);
  write('Socket (A/I) => ');
  readln(trenutni^.socketp4);
  write('Specifikacija => ');
  readln(trenutni^.nps4);
  write('Cijena => ');
  readln(trenutni^.npc4);
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

procedure dodajgraf;
begin
  clrscr();
  writeln('UNOS NOVIH GRAFICKIH KARTI (KOLICINA - 4)');
  writeln('======');
  write('Graficka karta 1 => ');
  readln(trenutni^.ng1);
  write('Specifikacija => ');
  readln(trenutni^.ngs1);
  write('Cijena => ');
  readln(trenutni^.ngc1);
  writeln('');
  write('Graficka karta 2 => ');
  readln(trenutni^.ng2);
  write('Specifikacija => ');
  readln(trenutni^.ngs2);
  write('Cijena => ');
  readln(trenutni^.ngc2);
  writeln('');
  write('Graficka karta 3 => ');
  readln(trenutni^.ng3);
  write('Specifikacija => ');
  readln(trenutni^.ngs3);
  write('Cijena => ');
  readln(trenutni^.ngc3);
  writeln('');
  write('Graficka karta 4 => ');
  readln(trenutni^.ng4);
  write('Specifikacija => ');
  readln(trenutni^.ngs4);
  write('Cijena => ');
  readln(trenutni^.ngc4);
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

procedure dodajram;
begin
clrscr();
  writeln('UNOS NOVIH MEMORIJA (RAM) (KOLICINA - 2)');
  writeln('======');
  write('RAM 1 => ');
  readln(trenutni^.nr1);
  write('Specifikacija => ');
  readln(trenutni^.nrs1);
  write('Cijena => ');
  readln(trenutni^.nrc1);
  writeln('');
  write('RAM 2 => ');
  readln(trenutni^.nr2);
  write('Specifikacija => ');
  readln(trenutni^.nrs2);
  write('Cijena => ');
  readln(trenutni^.nrc2);
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

procedure dodajdisk;
begin
clrscr();
  writeln('UNOS NOVIH TVRDIH DISKOVA (KOLICINA - 2)');
  writeln('======');
  write('Tvrdi disk 1 => ');
  readln(trenutni^.nd1);
  write('Specifikacija => ');
  readln(trenutni^.nds1);
  write('Cijena => ');
  readln(trenutni^.ndc1);
  writeln('');
  write('Tvrdi disk 2 => ');
  readln(trenutni^.nd2);
  write('Specifikacija => ');
  readln(trenutni^.nds2);
  write('Cijena => ');
  readln(trenutni^.ndc2);
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

procedure dodajnap;
begin
clrscr();
  writeln('UNOS NOVIH NAPAJANJA (KOLICINA - 2)');
  writeln('======');
  write('Napajanje 1 => ');
  readln(trenutni^.nn1);
  write('Specifikacija => ');
  readln(trenutni^.nns1);
  write('Cijena => ');
  readln(trenutni^.nnc1);
  writeln('');
  write('Napajanje 2 => ');
  readln(trenutni^.nn2);
  write('Specifikacija => ');
  readln(trenutni^.nns2);
  write('Cijena => ');
  readln(trenutni^.nnc2);
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

{Procedura unos maticne}
procedure maticna;
begin
  clrscr();
  writeln('Raspolozive maticne ploce');
  writeln('======');
  writeln('1. ',trenutni^.nm1,'; ',trenutni^.socketm1,'; ',trenutni^.nms1,' - ',trenutni^.nmc1,' kn');
  writeln('2. ',trenutni^.nm2,'; ',trenutni^.socketm2,'; ',trenutni^.nms2,' - ',trenutni^.nmc2,' kn');
  writeln('3. ',trenutni^.nm3,'; ',trenutni^.socketm3,'; ',trenutni^.nms3,' - ',trenutni^.nmc3,' kn');
  writeln('4. ',trenutni^.nm4,'; ',trenutni^.socketm4,'; ',trenutni^.nms4,' - ',trenutni^.nmc4,' kn');
  write('Tvoj izbor => ');
  readln(i);
    case i of
 1: trenutni^.mat:=trenutni^.nmc1;
 2: trenutni^.mat:=trenutni^.nmc2;
 3: trenutni^.mat:=trenutni^.nmc3;
 4: trenutni^.mat:=trenutni^.nmc4;
 end;
  if trenutni^.mat=trenutni^.nmc1 then
  ms:=trenutni^.socketm1;
  if trenutni^.mat=trenutni^.nmc2 then
  ms:=trenutni^.socketm2;
  if trenutni^.mat=trenutni^.nmc3 then
  ms:=trenutni^.socketm3;
  if trenutni^.mat=trenutni^.nmc4 then
  ms:=trenutni^.socketm4;
  a:=trenutni^.mat;
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

{Procedura unos procesora}
procedure procesor;
begin  
  clrscr();
  trenutni^.socketp1:=p1s;
  trenutni^.socketp2:=p2s;
  trenutni^.socketp3:=p3s;
  trenutni^.socketp4:=p4s;
  writeln('Raspolozivi procesori');
  writeln('======');
  writeln('NAPOMENA! Pazi na socket! (A - AMD, I - INTEL)');
  if trenutni^.mat=trenutni^.nmc1 then
  writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm1,';')
  else
  if trenutni^.mat=trenutni^.nmc2 then
  writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm2,';')
  else
  if trenutni^.mat=trenutni^.nmc3 then
  writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm3,';')
  else
  if trenutni^.mat=trenutni^.nmc4 then
  writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm4,';');
  writeln('======');
  writeln('1. ',trenutni^.np1,'; ',trenutni^.socketp1,'; ',trenutni^.nps1,' - ',trenutni^.npc1,' kn');
  writeln('2. ',trenutni^.np2,'; ',trenutni^.socketp2,'; ',trenutni^.nps2,' - ',trenutni^.npc2,' kn');
  writeln('3. ',trenutni^.np3,'; ',trenutni^.socketp3,'; ',trenutni^.nps3,' - ',trenutni^.npc3,' kn');
  writeln('4. ',trenutni^.np4,'; ',trenutni^.socketp4,'; ',trenutni^.nps4,' - ',trenutni^.npc4,' kn');
  write('Tvoj izbor => ');
  readln(i);
    case i of
 1: trenutni^.proc:=trenutni^.npc1;
 2: trenutni^.proc:=trenutni^.npc2;
 3: trenutni^.proc:=trenutni^.npc3;
 4: trenutni^.proc:=trenutni^.npc4;
 end;
  b:=trenutni^.proc;
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

{Procedura unos graficke}
procedure graficka;
begin  
  clrscr();
  writeln('Raspolozive graficke karte');
  writeln('======');
  writeln('1. ',trenutni^.ng1,'; ',trenutni^.ngs1,' - ',trenutni^.ngc1,' kn');
  writeln('2. ',trenutni^.ng2,'; ',trenutni^.ngs2,' - ',trenutni^.ngc2,' kn');
  writeln('3. ',trenutni^.ng3,'; ',trenutni^.ngs3,' - ',trenutni^.ngc3,' kn');
  writeln('4. ',trenutni^.ng4,'; ',trenutni^.ngs4,' - ',trenutni^.ngc4,' kn');
  write('Tvoj izbor => ');
  readln(i);
  case i of
 1: trenutni^.graf:=trenutni^.ngc1;
 2: trenutni^.graf:=trenutni^.ngc2;
 3: trenutni^.graf:=trenutni^.ngc3;
 4: trenutni^.graf:=trenutni^.ngc4;
 end;
  c:=trenutni^.graf;
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

{Procedura unos rama}
procedure rammem;
begin  
  clrscr();
  writeln('Raspolozivi RAM');
  writeln('======');
  writeln('1. ',trenutni^.nr1,'; ',trenutni^.nrs1,' - ',trenutni^.nrc1,' kn');
  writeln('2. ',trenutni^.nr2,'; ',trenutni^.nrs2,' - ',trenutni^.nrc2,' kn');
  write('Tvoj izbor => ');
  readln(i);
    case i of
 1: trenutni^.ram:=trenutni^.nrc1;
 2: trenutni^.ram:=trenutni^.nrc2;
 end;
  e:=trenutni^.ram;
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;


{Procedura unos diska}
procedure disk;
begin  
  clrscr();
  writeln('Raspolozivi tvrdi diskovi');
  writeln('======');
  writeln('1. ',trenutni^.nd1,'; ',trenutni^.nds1,' - ',trenutni^.ndc1,' kn');
  writeln('2. ',trenutni^.nd2,'; ',trenutni^.nds2,' - ',trenutni^.ndc2,' kn');
  write('Tvoj izbor => ');
  readln(i);
    case i of
 1: trenutni^.di:=trenutni^.ndc1;
 2: trenutni^.di:=trenutni^.ndc2;
 end;
  d:=trenutni^.di;
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

{Procedura unos napajanja}
procedure napajanje;
begin  
  clrscr();
  writeln('Raspoloziva napajanja');
  writeln('======');
  writeln('1. ',trenutni^.nn1,'; ',trenutni^.nns1,' - ',trenutni^.nnc1,' kn');
  writeln('2. ',trenutni^.nn2,'; ',trenutni^.nns2,' - ',trenutni^.nnc2,' kn');
  write('Tvoj izbor => ');
  readln(i);
    case i of
 1: trenutni^.nap:=trenutni^.nnc1;
 2: trenutni^.nap:=trenutni^.nnc2;
 end;
  e:=trenutni^.nap;
  trenutni^.p:=pocetni;
  pocetni:=trenutni;
end;

{Procedura brisanje komponenata}
procedure obrisi;
begin
    clrscr();
    writeln ('Unesite komponentu koju zelite obrisati iz odabira: ');
    writeln('1. Maticna ploca');
    writeln('2. Procesor');
    writeln('3. Graficka kartica');
    writeln('4. RAM');
    writeln('5. Tvrdi disk');
    writeln('6. Napajanje');
    write('Tvoj izbor => ');
    readln(i);
    case i of
    1:   begin
         trenutni^.mat:=0;
         writeln('Obrisana je maticna!');
         end;
    2:   begin
         trenutni^.proc:=0;
         writeln('Obrisan je procesor!');
         end;
    3:   begin
         trenutni^.graf:=0;
         writeln('Obrisana je graficka!');
         end;
    4:   begin
         trenutni^.ram:=0;
         writeln('Obrisana je RAM!');
         end;
    5:   begin
         trenutni^.di:=0;
         writeln('Obrisan je disk!');
         end;
    6:   begin
         trenutni^.nap:=0;
         writeln('Obrisano je napajanje!');
         end;
         end;
         end;

{Procedura ukupna cijena}
procedure ukupno;
var w,l,m,j,n,q:integer;
begin
clrscr();
w:=0;
l:=0;
m:=0;
j:=0;
n:=0;
q:=0;
begin
     w:=trenutni^.mat;
     l:=trenutni^.proc;
     m:=trenutni^.graf;
     j:=trenutni^.ram;
     n:=trenutni^.di;
     q:=trenutni^.nap;
end;
y:=w+l+m+j+n+q;
writeln('Cijena i komponente');
writeln('======');
writeln('Ukupna cijena vaseg racunala iznosi = ',y,' kn');
writeln('======');
writeln('Komponente koje ste izabrali:');
writeln('');
{Maticne}
writeln('Maticna ploca:');
if trenutni^.mat=trenutni^.nmc1 then
writeln('',trenutni^.nm1,'; ',trenutni^.socketm1,'; ',trenutni^.nms1,' - ',trenutni^.nmc1,' kn')
else
if trenutni^.mat=trenutni^.nmc2 then
writeln('',trenutni^.nm2,'; ',trenutni^.socketm2,'; ',trenutni^.nms2,' - ',trenutni^.nmc2,' kn')
else
if trenutni^.mat=trenutni^.nmc3 then
writeln('',trenutni^.nm3,'; ',trenutni^.socketm3,'; ',trenutni^.nms3,' - ',trenutni^.nmc3,' kn')
else
if trenutni^.mat=trenutni^.nmc4 then
writeln('',trenutni^.nm4,'; ',trenutni^.socketm4,'; ',trenutni^.nms4,' - ',trenutni^.nmc4,' kn');
{Procesori}
writeln('');
writeln('Procesor:');
if trenutni^.proc=trenutni^.npc1 then
writeln('',trenutni^.np1,'; ',trenutni^.socketp1,'; ',trenutni^.nps1,' - ',trenutni^.npc1,' kn')
else
if trenutni^.proc=trenutni^.npc2 then
writeln('',trenutni^.np2,'; ',trenutni^.socketp2,'; ',trenutni^.nps2,' - ',trenutni^.npc2,' kn')
else
if trenutni^.proc=trenutni^.npc3 then
writeln('',trenutni^.np3,'; ',trenutni^.socketp3,'; ',trenutni^.nps3,' - ',trenutni^.npc3,' kn')
else
if trenutni^.proc=trenutni^.npc4 then
writeln('',trenutni^.np4,'; ',trenutni^.socketp4,'; ',trenutni^.nps4,' - ',trenutni^.npc4,' kn');
{Graficke}
writeln('');
writeln('Graficka karta:');
if trenutni^.graf=trenutni^.ngc1 then
writeln('',trenutni^.ng1,'; ',trenutni^.ngs1,' - ',trenutni^.ngc1,' kn')
else
if trenutni^.graf=trenutni^.ngc2 then
writeln('',trenutni^.ng2,'; ',trenutni^.ngs2,' - ',trenutni^.ngc2,' kn')
else
if trenutni^.graf=trenutni^.ngc3 then
writeln('',trenutni^.ng3,'; ',trenutni^.ngs3,' - ',trenutni^.ngc3,' kn')
else
if trenutni^.graf=trenutni^.ngc4 then
writeln('',trenutni^.ng4,'; ',trenutni^.ngs4,' - ',trenutni^.ngc4,' kn');
{RAM}
writeln('');
writeln('RAM:');
if trenutni^.ram=trenutni^.nrc1 then
writeln('',trenutni^.nr1,'; ',trenutni^.nrs1,' - ',trenutni^.nrc1,' kn')
else
if trenutni^.ram=trenutni^.nrc2 then
writeln('',trenutni^.nr2,'; ',trenutni^.nrs2,' - ',trenutni^.nrc2,' kn');
{Tvrdi diskovi}
writeln('');
writeln('Tvrdi disk:');
if trenutni^.di=trenutni^.ndc1 then
writeln('',trenutni^.nd1,'; ',trenutni^.nds1,' - ',trenutni^.ndc1,' kn')
else
if trenutni^.di=trenutni^.ndc2 then
writeln('',trenutni^.nd2,'; ',trenutni^.nds2,' - ',trenutni^.ndc2,' kn');
{Napajanja}
writeln('');
writeln('Napajanje:');
if trenutni^.nap=trenutni^.nnc1 then
writeln('',trenutni^.nn1,'; ',trenutni^.nns1,' - ',trenutni^.nnc1,' kn')
else
if trenutni^.nap=trenutni^.nnc2 then
writeln('',trenutni^.nn2,'; ',trenutni^.nns2,' - ',trenutni^.nnc2,' kn');
{Usporedbe socketa}
writeln('');
if trenutni^.mat=trenutni^.nmc1 then
writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm1,';')
else
if trenutni^.mat=trenutni^.nmc2 then
writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm2,';')
else
if trenutni^.mat=trenutni^.nmc3 then
writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm3,';')
else
if trenutni^.mat=trenutni^.nmc4 then
writeln('Socket trenutno odabrane maticne ploce: ',trenutni^.socketm4,';');
if trenutni^.proc=trenutni^.npc1 then
writeln('Socket trenutno odabranog procesora: ',trenutni^.socketp1,';')
else
if trenutni^.proc=trenutni^.npc2 then
writeln('Socket trenutno odabranog procesora: ',trenutni^.socketp2,';')
else
if trenutni^.proc=trenutni^.npc3 then
writeln('Socket trenutno odabranog procesora: ',trenutni^.socketp3,';')
else
if trenutni^.proc=trenutni^.npc4 then
writeln('Socket trenutno odabranog procesora: ',trenutni^.socketp4,';');
readln;
end;

{O programu}
procedure opis;
begin
clrscr();
writeln('O programu');
writeln('======');
writeln('Program za odabir konfiguracije za seminar iz informatike.');
writeln('Napravio Dino Dzafovic, Lipanj 2012.');
writeln('Pritisnite <ENTER> da bi se vratili u izbornik.');
readln;
end;

begin
    new(trenutni);
    clrscr();
    repeat
    clrscr();
    writeln('Dodavanje komponenata');
    writeln('======');
    writeln('1. Dodaj maticne ploce');
    writeln('2. Dodaj procesore');
    writeln('3. Dodaj graficke karte');
    writeln('4. Dodaj RAM');
    writeln('5. Dodaj tvrdi disk');
    writeln('6. Dodaj napajanje');
    writeln('======');
    writeln('0. Pokreni Program');
    writeln('======');
    write('Tvoj izbor => ');
    readln(x);
    case x of
    0: x:=0;
    1: dodajmat;
    2: dodajproc;
    3: dodajgraf;
    4: dodajram;
    5: dodajdisk;
    6: dodajnap;
    end;
    until x=0;
    pocetni:=NIL;
    repeat
    clrscr();
    writeln('Program za odabir konfiguracije racunala');
    writeln('======');
    writeln('1. Odaberi maticnu plocu');
    writeln('2. Odaberi procesor');
    writeln('3. Odaberi graficku karticu');
    writeln('4. Odaberi RAM');
    writeln('5. Odaberi tvrde diskove');
    writeln('6. Odaberi napajanja');
    writeln('======');
    writeln('7. Obrisi komponentu');
    writeln('8. Prikazi cijenu');
    writeln('======');
    writeln('9. O programu');
    write('Tvoj izbor => ');
    readln(i);
    case i of
 1: maticna;
 2: procesor;
 3: graficka;
 4: rammem;
 5: disk;
 6: napajanje;
 7: obrisi;
 8: ukupno;
 9: opis;
    end;
    until i=0;
end.
Views: 741 | Added by: Administrator | Rating: 0.0/0
Create a free website with uCoz