Perl :: Aufgabe #211

1 Lösung Lösung öffentlich

Array Vorkommen programmieren

Anfänger - Perl von Bryan - 31.10.2018 um 20:20 Uhr
Hallo Zusammen

Kann Jemand von Euch mir da weiter helfen?

Fragestellung des Vorkommen.

Gegeben ist ein Array zum Beispiel mit Zahlen als Werten:
{2, 17, 10, 9, 16, 3, 9, 16, 5, 1, 17, 14}
Schreiben Sie ein Programm, das von einem Array bestehend aus Zahlen prüft, wie viele dieser
Zahlen durch 3 teilbar sind.
Zudem sollen am Schluss die entsprechenden Zahlen ausgegeben werden. Das Programm soll für
beliebige Arrays funktionieren.

Vielen Dank für eure Lösung

Lösungen:

vote_ok
von claas1007 (130 Punkte) - 23.10.2019 um 11:15 Uhr
Quellcode ausblenden Perl-Code
#!/usr/bin/perl


   use strict;
   use warnings;
   
   
   
## Aufgabenstellung:
   
# Hallo Zusammen
#
# Kann Jemand von Euch mir da weiter helfen?
#
# Fragestellung des Vorkommen.
#
# Gegeben ist ein Array zum Beispiel mit Zahlen als Werten:
# {2, 17, 10, 9, 16, 3, 9, 16, 5, 1, 17, 14}
# Schreiben Sie ein Programm, das von einem Array bestehend aus Zahlen prüft, wie viele dieser
# Zahlen durch 3 teilbar sind.
# Zudem sollen am Schluss die entsprechenden Zahlen ausgegeben werden. Das Programm soll für
# beliebige Arrays funktionieren.

# Vielen Dank für eure Lösung 
   
   
   
   
## Mainprogramm:  
## Erstellen eines beliebigen Array:

   my @zahlen;
   my $startwert = "ja";

while ($startwert =~ /^ja$/)
   {
   &routine;
   print "Weitere Zahl hinzufuegen[ja/nein]? \n";
   $startwert = <STDIN>;
   
   }
   

## Das Array zahlen mit den beliebig vom user eingegebenen Zahlen ist bereits vorhanden(@zahlen)

   my @durch3teilbar;
   my @nichtdurch3teilbar;
   
foreach (@zahlen) 
   {
   if ($_ % 3 == 0)
      {
      push @durch3teilbar, $_;
      }
      else   
      {
      push @nichtdurch3teilbar, $_;
      }
   }
## Ende Mainprogramm
   
   
   
## Ausgabe:   
 
##Leerzeilen zur Uebersichtlichkeit:

print "\n" . "\n" . "\n";

  
## Ausgabe des Arrays Zahlen 

print "Ihre Zahlen: \n";
foreach (@zahlen) 
   {
   print $_ . ", ";
   }
print "\n" . "\n";   


##Ausgabe des Arrays Zahlen sortiert nach Größe

print "Ihre Zahlen sortiert nach Groesse: \n";
 print join(", ", sort{$a<=>$b}(@zahlen));
print "\n" . "\n";
   
   
## Ausgabe der Zahlen, die durch 3 teilbar sind

print "Ihre Zahlen, die durch 3-teilbar sind: \n";
foreach (@durch3teilbar) 
   {
   print $_ . ", ";
   }
print "\n" . "\n";


## Ausgabe der Zahlen, die nicht durch 3 teilbar sind

print "Ihre Zahlen, die nicht durch 3-teilbar sind: \n";
foreach (@nichtdurch3teilbar) 
   {
   print $_ . ", ";
   }

print "\n" . "\n";
## Ende Ausgabe


## Subroutine zum Erstellen des beliebigen Arrays

sub routine
   {
   print "Zahl eingeben: \n";
      my $eingabe = <STDIN>;
   chomp ($eingabe);
   push @zahlen, $eingabe;
   }