Aufgabe 3

1. Frage

Lösung

~ $ mkdir aufg3

2. Frage

Lösung

~ $ cd aufg3/
~/aufg3 $ kate artikel.txt

3. Frage

Lösung

~/aufg3 $ head -3 artikel.txt

4. Frage

Lösung

~/aufg3 $ tail -3 artikel.txt

5. Frage

Lösung

~/aufg3 $ wc -lw artikel.txt

6. Frage

Lösung

~/aufg3 $ cp artikel.txt text_2.txt

7. Frage

Lösung

~/aufg3 $ head -3 text_2.txt > text_anfang.txt

8. Frage

Lösung

~/aufg3 $ tail -3 text_2.txt > text_ende.txt

9. Frage

Lösung

#!/usr/bin/perl
# Mittelwert von drei Zahlen

use strict;

{
    my ($z1,$z2,$z3,$mittel);

    print "Erste Zahl >>> ";
    $z1 = <>;

    print "Zweite Zahl >>> ";
    $z2 = <>;

    print "Dritte Zahl >>> ";
    $z3 = <>;

    $mittel = ($z1+$z2+$z3)/3;

    print "$mittel\n";
}

10. Frage

Lösung

#!/usr/bin/perl
# Berechnen von 4!

use strict;

{
    my ($zahl,$erg);

    $zahl = 4;
    $erg = 1;

    while ($zahl > 0){
      $erg = $erg * $zahl;
      $zahl--;
      }
    
    #oder 
    
    # $erg = 1*2*3*4; nicht die beste Lösung aber auch eine Lösung  ;-)
    
    print "4! = $erg\n";
}

11. Frage

Lösung

#!/usr/bin/perl
# Vertauschen von zwei Zahlen

use strict;

{
    my ($z1,$z2);

    $z1 = 1;
    $z2 = 2;

    ($z1, $z2) = ($z2, $z1);
    
    #oder mit temporärer Variable:
    # my $tmp;
    # $tmp = $z1;
    # $z1 = $z2;
    # $z2 = $tmp;

    print "$z1, $z2\n";
}

12. Frage

Lösung

#!/usr/bin/perl
# Speichere drei Zahlen in einer Liste

use strict;

{
   my @L1;
   
   print "1. Zahl >>> ";
   chomp($L1[0] = <>);
   
   #oder mit push:
   
   #my $zahl;
   
   #print "1. Zahl >>> ";
   #$zahl = <>;
   #chomp($zahl);
   #push(@L1, $zahl);
   
   print "2. Zahl >>> ";
   chomp($L1[1] = <>);
   
   print "3. Zahl >>> ";
   chomp($L1[2] = <>);
   
   print "@L1\n";
   
}

ODER

#!/usr/bin/perl

use strict;
{
   my (@L1, $i);
   
   for ($i=0; $i<3; $i++) {
      print $i+1, ". Zahl >>>";
      chomp($L1[$i]=<>);
   }
   print "@L1\n";
}

13. Frage

Lösung

#!/usr/bin/perl
# Mittelwert aus Liste berechnen

use strict;

{
   my @L1 = (3,7,16);
   
   print "@L1\n";
   
   my $mittel = (($L1[0] + $L1[1] + $L1[2]) / 3);
   
   print "Mittelwert: $mittel\n";
}

ODER

#!/usr/bin/perl
# Mittelwert aus Liste berechnen

use strict;

{
   my @L1 = (3,7,16);
   my $summe = 0;
   my $anzZahlen = 0;
   my $mittelWert = 0;
   
   my $i;
   for($i=0; $i<3; $i++) {
      $summe = $summe + $L1[$i];
      $anzZahlen++;
   }
   $mittelWert = $summe/$anzZahlen;
   print ("Mittelwert: $mittelWert\n");
}

14. Frage

Lösung

#!/usr/bin/perl
# Zeile einlesen und fünf mal ausgeben a) in einer Zeile b) in fünf Zeilen

use strict;

{
   my $line;
   
   print "Her mit dem Text! >>> ";
   $line = <>;
   chomp($line);      
   print "$line"x5,"\n"; # a) Ausgabe in einer Zeile
   print "$line\n"x5;    # b) Ausgabe in fünf Zeilen
   
}

15. Frage

Lösung

#!/usr/bin/perl

# Autor: Max Hadersbeck 
{
   use strict;
   my ($i,$j);
   $i=5;
   while ($i>=0) {        
      $j = $i * $i;
      print "$i\n";  #Drucken von $i (absteigend von 5 bis einschließlich 0)
      print "$j\n";  #und zugehörigem Quadrat
      $i = $i - 1 ;      
	}
}