DataMuseum.dk

Presents historical artifacts from the history of:

RegneCentralen RC700 "Piccolo"

This is an automatic "excavation" of a thematic subset of
artifacts from Datamuseum.dk's BitArchive.

See our Wiki for more about RegneCentralen RC700 "Piccolo"

Excavated with: AutoArchaeologist - Free & Open Source Software.


top - download

⟦9876b7570⟧ TextFile

    Length: 3200 (0xc80)
    Types: TextFile
    Names: »UGELOEN.PAS«

Derivation

└─⟦09235ab48⟧ Bits:30003065 Demoprogrammer K-Z til Pascal bog
    └─ ⟦this⟧ »UGELOEN.PAS« 

TextFile

PROGRAM ugeloen;

  CONST
    maxtekst = 30;
  
  TYPE
    navnetype = STRING(.maxtekst.);
  
  VAR
    ansaettelse, navn, adresse, postby : navnetype;
    timeloen, loen, netto, skat, skatpl, fradrag : REAL;
    afdeling, antaltimer, traekpct : INTEGER;
    ch : CHAR;
  
  PROCEDURE udskrift;
   
    BEGIN (* udskrift *)
      WRITE(CLRHOM);
      WRITELN('U G E S E D D E L');
      WRITELN('----------------------------------------------------------');
      WRITELN;
      WRITELN('Ansættelsessted:            ', ansaettelse);
      WRITELN('Navn:                       ', navn);
      WRITELN('Adresse:                    ', adresse);
      WRITELN('Postnr. & by:               ', postby);
      WRITELN('----------------------------------------------------------');
      WRITELN;
      WRITELN('Afdeling:                      ', afdeling : 12);
      WRITELN('Antal timer:                   ', antaltimer : 12);
      WRITELN('Timeløn:                       ', timeloen : 15 : 2, ' kr');
      WRITELN('----------------------------------------------------------');
      WRITELN;
      WRITELN('Bruttoløn:                     ', loen : 15 : 2, ' kr');
      WRITELN('Fradrag:                       ', fradrag : 15 : 2, ' kr');
      WRITELN('Skattepligtig indkomst:        ', skatpl : 15 : 2, ' kr');
      WRITELN('Skat (trækprocent: ', traekpct, '):        ', 
              skat : 15 : 2, ' kr');
      WRITELN('At udbetale:                   ', netto : 15 : 2, ' kr');
      WRITELN('----------------------------------------------------------');
    END; (* udskrift *)
  
  PROCEDURE begynd;
  
    BEGIN (* begynd *)
      WRITE(CLRHOM);
      GOTOXY(0, 6);
      WRITELN('Du skal nu indtaste de nødvendige oplysninger for at få ');
      WRITELN('lønseddelen udfyldt korrekt.');
      WRITELN;
      WRITE('Ansættelsessted:                 '); 
      BUFLEN := maxtekst;
      READLN(ansaettelse);
      WRITE('Navn:                            '); 
      BUFLEN := maxtekst;
      READLN(navn);
      WRITE('Gade og nummer:                  '); 
      BUFLEN := maxtekst;
      READLN(adresse);
      WRITE('Postnr. og by:                   '); 
      BUFLEN := maxtekst;
      READLN(postby);
      WRITE('Afdeling nr.:                    '); READLN(afdeling);
      WRITE('Antal timer (pr. uge)            '); READLN(antaltimer);
      WRITE('Timeløn:                         '); READLN(timeloen);
      WRITE('Skattemæssigt fradrag pr. uge:   '); READLN(fradrag);
      WRITE('Trækprocent:                     '); READLN(traekpct);
      loen := antaltimer * timeloen;
      skatpl := TRUNC(loen - fradrag);
      skat := ROUND(skatpl * traekpct / 100);
      netto := loen - skat;
    END; (* begynd *)
  
  BEGIN (* ugeloen *)
    REPEAT
      begynd;
      udskrift;
      GOTOXY(0, 22);
      WRITE('Ønsker du at prøve igen (j/n): ');
      REPEAT
        READ(KBD, ch)
      UNTIL ch IN (.'J', 'j', 'N', 'n'.);
      WRITELN(ch);
    UNTIL ch IN (.'N', 'n'.);
    WRITELN('Så slutter vi for i dag.');
  END. (* ugeloen *)
«eof»