Buch Cover Buch Cover Buch Cover Buch Cover

Web-Code: - Webcode Help

AHV (Selektionen)

Die Beitragspflicht für die AHV (Alters- und Hinterlassenenversicherung) beginnt ab dem 1. Januar nach Vollenden des 17. Altersjahres und endet (bis zur Umsetzung des Artikels 8 der Schweizer Bundesverfassung vom 18. Dez. 1998) unterschiedlich; nämlich im Alter von 64 Jahren bei Frauen bzw. 65 Jahren bei Männern.

Zur Vereinfachung sollen alle 18- bis und mit 64- (bzw. 65-) Jährigen beitragspflichtig sein.

Schreiben Sie ein Programm, bei dem die Anwenderin Alter und Geschlecht eingeben kann. Die Ausgabe des Programms soll entweder "noch nicht AHV-beitragspflichtig", "AHV-beitragspflichtig" oder "bereits AHV-Empfänger" sein.

1 Kommentare

Bitte melde dich an um einen Kommentar abzugeben

Kommentare (1)

Dino_Weber 31. Oktober 2016 13:53   reply report
.

11 Lösung(en)

// Version für die Befehlszeile
// Nach Geschlecht fragen bis entweder w oder m eingegeben wird
do {
  echo "Bitte geben Sie ihr Geschlecht an (m/w):";
  $handle = fopen ("php://stdin","r");
  $geschlecht = trim(fgets($handle));
} while ($geschlecht != 'm' AND $geschlecht != 'w');

// Nach Alter fragen bis eine Zahl eingegeben wird
do {
  echo "Bitte geben Sie ihr Alter an:";
  $handle = fopen ("php://stdin","r");
  $alter = trim(fgets($handle));
} while (!is_numeric($alter));

// Ausgabe
if ($alter < 18 )
{
  echo "noch nicht AHV Beitragspflichtig" . "\n";
}
elseif (($geschlecht == 'm' AND $alter < 66) OR ($geschlecht == 'w' AND $alter < 65))
{
  echo "AHV Beitragspflichtig" . "\n";
}
else
{
  echo "bereits AHV-Empfänger" . "\n";
}

                
def ahv():
    # Nach Geschlecht fragen bis entweder w oder m eingegeben wird
    print "Vorsorgeberechnung"
    geschlecht = ''
    while (geschlecht != 'w' and geschlecht != 'm'):
        geschlecht = raw_input("Bitte geben Sie ihr Geschlecht an (m/w):")

    alter = 0
    while (alter < 10 or alter > 150):
        alter = int(raw_input("Bitte geben Sie ihr Alter an:"))

    if alter < 18:
        print "noch nicht AHV Beitragspflichtig \n"
    elif (geschlecht=='m' and alter < 66) or (geschlecht=='w' and alter < 65):
        print "AHV Beitragspflichtig \n"
    else:
        print "bereits AHV-Empfänger \n"


ahv()
                
// Version für den Webbrowser
<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN"
       "http://www.w3.org/TR/html4/loose.dtd">
<html>
<head>
<title>Programmieraufgaben.ch: AHV</title>
</head>
<body>
<?php
// Ausgabe der Beitragspflicht wenn das Formular abgeschickt wurde
if (isset($_POST['geschlecht']) && isset($_POST['geschlecht']))
{
  $geschlecht = $_POST['geschlecht'];
  $alter = $_POST['alter'];

  // Ausgabe
  if ($alter < 18 )
  {
    echo "noch nicht AHV Beitragspflichtig" . "\n";
  }
  elseif (($geschlecht == 'm' AND $alter < 66) OR ($geschlecht == 'w' AND $alter < 65))
  {
   echo "AHV Beitragspflichtig" . "\n";
  }
  else
  {
    echo "bereits AHV-Empfänger" . "\n";
  }
}
else
{ // Anzeige des Formulars
?>
<form method="post">
  <ul>
    <li>
      <label for="geschlecht">Geschlecht</label>
      <select name="geschlecht" id="geschlecht">
        <option>w</option>
        <option>m</option>
      </select>
    </li>
    <li>
      <label for="alter">Alter</label>
      <select name="alter" id="alter">
        <?php for ($i = 1; $i <= 100; $i++): ?>
        <option><?php echo $i ?></option>
        <?php endfor; ?>
      </select>
    </li>
  </ul>
<input type="submit" value="Senden">
</form>
<?php
}
?>
</body>
</html>
                
var alterOk = false;
while(!alterOk) {
   alter = window.prompt("Geben Sie ihr Alter ein");
   if(isFinite(alter*1)){
      alterOk = true; 
   }
}

var geschlechtOk = false;
while(!geschlechtOk) {
   geschlecht = window.prompt("Geben Sie ihr Geschlecht ein (w oder m)");
   if("m" == geschlecht || "w" == geschlecht){
      geschlechtOk = true; 
   }
}   

if (18 > alter) {
   window.alert("noch nicht AHV-beitragspflichtig");
} else {
   if (64 <= alter   && "w" == geschlecht) {
      window.alert("bereits AHV-Empfänger");
   } else {
      if (65 <= alter && "m" == geschlecht) {
	    window.alert("bereits AHV-Empfänger");
      } else {	  
	    window.alert("AHV-beitragspflichtig");
      }
   }
}	  
                

Lösung von: Raphael Hirsiger (Credit Suisse)

var alterOK = false;
while (!alterOK){
   alter           = window.prompt("Geben Sie Ihr Alter ein");
   if(isFinite(alter*1)) {
      alterOK = true;
   }
}

var geschlechtOK = false;
while (!geschlechtOK) {
   geschlecht      = window.prompt("Geben Sie Ihr Geschlecht ein (weiblich oder meannlich)");
   if("maennlich" == geschlecht || "weiblich" == geschlecht) {
      geschlechtOK = true;
   }
}

if (alter < 18) {
   window.alert ("noch nicht AHV-beitragspflichtig");}
if (alter >= 18 && alter <= 64 && "weiblich" == geschlecht) {
   window.alert ("AHV-beitragspflichtig");}
if (alter >= 18 && alter <= 65 && "maennlich" == geschlecht) {
   window.alert ("AHV-beitragspflichtig");}
if (alter > 64 && "weiblich" == geschlecht) {
   window.alert ("bereits AHV-Empfaenger");}
if (alter > 65 && "maennlich" == geschlecht ) {
   window.alert ("bereits AHV-Empfaenger");}
   
   
                

Lösung von: Arik Guggenheim (Credit Suisse)

hauptprogramm();

/////////////////////

function hauptprogramm(){
  var alter = alterEinlesen();
  if(alter >= 18) {
    var geschlecht = geschlechtEinlesen();
    pflichtigOderEmpfaenger(alter, geschlecht);
  } else {
    window.alert("noch nicht pflichtig");
  }
}

function pflichtigOderEmpfaenger(alter, g) {
  var obergrenzeNochPflichtig = 64;
  if("m" == g) {
    obergrenzeNochPflichtig = 65;
  }
  pflichtigOderEmpfaengerNachObergrenze(alter, obergrenzeNochPflichtig);
}

/**
 * og = Obergrenze
 * a  = alter
 */
function pflichtigOderEmpfaengerNachObergrenze(a, og) {
  if(a > og) {
    window.alert("AHV Empfaenger");
  } else {
    window.alert("AHV Pflichtig");
  }  
}


function alterEinlesen() {
  while(true) {
     var alterEingabe = window.prompt("Bitte alter (0..120) eingeben");
     alterEingabe = alterEingabe * 1;
     if(isFinite(alterEingabe)) {
       if(alterEingabe >= 0 && alterEingabe < 121) {
	   return alterEingabe;
       }
     }
  }
}

function geschlechtEinlesen() {
  while(true) {
    var g = window.prompt("Bitte Geschlecht(m|w) eingeben");
    if("m" == g | "w" == g) {
      return g;
    }
  }     
}
                

Lösung von: Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch)

*process langlvl(saa2);
*process limits(fixeddec(31));
*process aggregate, attributes;
*process flag(W), source, insource, options, xref,nest, number, offset;
*process gonumber, snap;
*process or('!');

 /*********************************************************************/
 /* Autor : philipp gressly freimann (@ http://www.sanits-training.ch)*/
 /* Datum : 15. Nov. 2011                                             */
 /* Aufgabe 3.6 (Programmieraufgaben.ch: AHV)                         */
 /*********************************************************************/

 AHV : proc options(main noexecops);

  dcl AlterC     char(64)         ;
  dcl Alter      bin fixed(31)    ;

  dcl Geschlecht char(64)   ; /* 'w'.., 'm'.. */

  dcl NOCH_NICHT char(128)    value("Noch nicht AHV-beitragspflichtig"),
      PFLICHTIG  char(128)    value("AHV-beitragspflichtig"),
      BEZUG      char(128)    value("Bereits AHV-Empfaenger");

  /* ... */
  dcl WBezug     bin fixed(31) value(64),
      MBezug     bin fixed(31) value(65);

  /* Temporaer */
  dcl (ww, mm) bit(1);

  display ("Bitte geben Sie Ihr Alter ein: ")
  reply(AlterC);
  Alter = AlterC;

  display ("Bitte geben Sie Ihr Geschlecht (w/m) ein: ")
  reply(Geschlecht);

  if(Alter < 18) then do;
    display(NOCH_NICHT);
  end;
  else do;

    ww = ('w' = Geschlecht) & (Alter <= WBezug);
    mm = ('m' = Geschlecht) & (Alter <= MBezug);
    if(ww ! mm) then do;
      display(PFLICHTIG);
    end;
    else do;
      display(BEZUG);
    end;
  end;

 end AHV;
                

Lösung von: Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch)

package ch.programmieraufgaben.sequenz;

import java.util.Scanner;


public class AHV {
  public static void main(String[] args) {
    new AHV().top();
  }
  
  void top() {
     int  alter              = einlesenInt ("Alter");
     char geschlecht         = einlesenChar("Geschlecht");
     int  minBeitragspflicht = 18;
     int  maxBeitragspflicht = 64;
     String ausgabe          = "AHV-beitragspflichtig";
     
     if('m' == geschlecht) {
         maxBeitragspflicht = 65; 
     }
     
     if(alter < minBeitragspflicht) {
       ausgabe = "noch nicht AHV-beitragspflichtig";
     }
     if(alter > maxBeitragspflicht) {
         ausgabe = "bereits AHV-Empfänger";
     }
     System.out.println(ausgabe);  
  }
  
  // generelle Hilfsfunktionen
  Scanner sc = new Scanner(System.in);
  int einlesenInt(String wert) {
      meldung(wert);
      return sc.nextInt();
  }
  char einlesenChar(String wert) {
      meldung(wert);
      return sc.next().charAt(0);
  }
  void meldung(String wert) {
    System.out.println("Bitte " + wert + " eingeben:" );
  }
  
} // end of class AHV
                

Lösung von: Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch)

{$R+}
{$B+}
program AHVBeitrag(input,output);
{FernUni Hagen}
{ Ermittlung vonn Beitragpflichtigen und nicht Beitragpflichtigen Personen
  Eingabe von Alter und Geschlecht}
var
Alter : integer;
Gesch : string;
begin
  Alter := 0;
  Gesch := '';
  write('Geben Sie das Alter an: ');
  readln(Alter);
  write('Geben Sie den Geschlecht an: ');
  readln(Gesch);

  if (Alter < 18) then {Minderjährige}
  begin
    writeln('noch nicht AHv beitragspflichtig');
    readln() {nur um die kosoleausgabe zu sehen}
  end
  else
  if(Alter >=18) and (Alter <= 64) and (Gesch='Mann')  then {Männer}
  begin
    writeln('AHV-Beitragspflichtig');
    readln() {nur um die kosoleausgabe zu sehen}
  end
  else
  if(Alter >=18) and (Alter <= 65) and (Gesch='Frau')  then {Frauen}
  begin
    writeln('AHV-Beitragspflichtig');
    readln() {nur um die kosoleausgabe zu sehen}
  end
  else
    writeln('AHV-Empfaenger');
    readln() {nur um die kosoleausgabe zu sehen}
end. 
                

Lösung von: Name nicht veröffentlicht

function isLiableToAHV (sex, age) {
  if (age < 18) return 'noch nicht AHV-beitragspflichtig';
  if ((sex == 'w' && age >= 64) || (sex = 'm' && age >= 65))
    return 'bereits AHV-Empfänger';
  return 'AHV-beitragspflichtig';
}

// eingabemaske
document.write(`
  <label>Alter: </label>
  <input type="number" id="age" onchange="answer()">
  <label>Geschlecht: </label>
  <select id="sex" onchange="answer()">
    <option value="m">männlich</option>
    <option value="w">weiblich</option>
  </select>
  <div id="info">&nbsp;</div>
`);
function answer() {
  document.getElementById('info').innerText =
    isLiableToAHV(document.getElementById('sex').value, document.getElementById('age').value);
}                                                            // lissalanda@gmx.at
                

Lösung von: Lisa Salander (Heidi-Klum-Gymnasium Bottrop)

function isLiableToAHV (sex, age) {
  if (age < 18) return 'noch nicht AHV-beitragspflichtig';
  if ((sex == 'w' && age >= 64) || (sex = 'm' && age >= 65))
    return 'bereits AHV-Empfänger';
  return 'AHV-beitragspflichtig';
}

// eingabemaske
document.write(`
  <label>Alter: </label>
  <input type="number" id="age" onchange="answer()">
  <label>Geschlecht: </label>
  <select id="sex" onchange="answer()">
    <option value="m">männlich</option>
    <option value="w">weiblich</option>
  </select>
  <div id="info">&nbsp;</div>
`);
function answer() {
  document.getElementById('info').innerText =
    isLiableToAHV(document.getElementById('sex').value, document.getElementById('age').value);
}                                                            // lissalanda@gmx.at
                

Lösung von: Lisa Salander (Heidi-Klum-Gymnasium Bottrop)

Aktionen

Bewertung

Durchschnittliche Bewertung:

Eigene Bewertung:
Bitte zuerst anmelden

Meta

Zeit: 0.5
Schwierigkeit: k.A.
Webcode: yo4o-3stj
Autor: Philipp G. Freimann (BBW (Berufsbildungsschule Winterthur) https://www.bbw.ch)

Download PDF

Download ZIP

Zu Aufgabenblatt hinzufügen