Lina: multiplizieren im hash

hallo,

ich habe eine liste, z. B.
1 3 aha
2 5 gehen
3 10 laufen

hat jemand eine Idee wie man eine Ergebnisliste bekommt, die aussieht:

3 aha
10 gehen
30 laufen

Die Datei ist im Hash. Die Zahlen soll multipliziert werden.

Gruß,
Lina

  1. hallo,

    ich habe eine liste, z. B.
    1 3 aha
    2 5 gehen
    3 10 laufen

    Was soll das sein?
    Eine Liste mit einer Liste, wo der erste und zweite Wert eine Zahl ist der dritte ein String?

    Struppi.

    1. hallo,

      die erste Zahl mit der zweiten Zahl soll multipliziert werden. So ähnlich:
      1*3 aha
      2*5 gehen
      3*10 laufen

      Lina

      1. die erste Zahl mit der zweiten Zahl soll multipliziert werden. So ähnlich:
        1*3 aha
        2*5 gehen
        3*10 laufen

        Ja, genau so geht das. Oder was willst du genau Wissen?

        Struppi.

        1. die erste Zahl mit der zweiten Zahl soll multipliziert werden. So ähnlich:
          1*3 aha
          2*5 gehen
          3*10 laufen

          Ja, genau so geht das. Oder was willst du genau Wissen?

          Struppi.

          Ich bin nicht sicher ob ich es umsetzen kann. Ich nehme an, dass zuerst soll die Zeile gelesen, gesplittet (split//) und dann die ersten Glieder multipliziert werden.
          Lina

          1. Hi,

            Ich bin nicht sicher ob ich es umsetzen kann. Ich nehme an, dass zuerst soll die Zeile gelesen, gesplittet (split//) und dann die ersten Glieder multipliziert werden.

            Steht das ganze momentan in einer Textdatei?

            mfG,
            steckl

            1. Steht das ganze momentan in einer Textdatei?

              mfG,
              steckl

              hallo,

              ja, es ist Textdatei.

              Gruß,
              Lina

              1. Hi,

                ja, es ist Textdatei.

                Dann geht es so, wie du vorher beschrieben hast:

                • Zeile einlesen
                • Zeile bei Space splitten
                • Erste beiden Werte multiplizieren
                • Ergebnis z.B. in einen Hash speichern (wenn in keiner Spalte eindeutige Werte sind muss eine andere Datenstruktur gewaehlt werden)
                • naechste Zeile einlesen
                  ...

                mfG,
                steckl

                1. danke!

                  Gruß,
                  Lina

              2. ja, es ist Textdatei.

                Wäre das evtl. möglich gewesen vorher zu sagen?
                Du hast gesagt du hättest einen Hash, ich sehe weit und breit keinen Hash.

                Struppi.

                1. gudn tach!

                  Du hast gesagt du hättest einen Hash, ich sehe weit und breit keinen Hash.

                  bitte sehr. ;-)

                  prost
                  seth

                2. Sorry, Struppi.
                  Ich bin ja nur Anfänger, ich kann auch Fehler machen.

                  Gruß,
                  Lina

                  1. Ich bin ja nur Anfänger, ich kann auch Fehler machen.

                    du hast keinen Fehler gemacht, sondern dir ein bisschen wenig Mühe gegeben deine Frage zu formulieren. Wenn man den Fragenden versteht hilft sich's oft leichter.

                    Struppi.

                    1. Hi,

                      Ich bin ja nur Anfänger, ich kann auch Fehler machen.

                      du hast keinen Fehler gemacht, sondern dir ein bisschen wenig Mühe gegeben deine Frage zu formulieren. Wenn man den Fragenden versteht hilft sich's oft leichter.

                      Naja, aus fehlern lernt man (hoffentlich) :-)

                      mfG,
                      steckl

  2. ich habe eine liste, z. B.
    1 3 aha
    2 5 gehen
    3 10 laufen
    Die Datei ist im Hash.

    Für komplexe Strukturen gibt es perldsc.

    Beispiel:

    use strict;  
    use Data::Dumper;  
      
    my %liste = ( foo => [1, 3],  
                  bar => [2, 5],  
                  baz => [3, 10]  
                );  
    my %erg = map { $_ => $liste{$_}->[0] * $liste{$_}->[1] } keys %liste;  
    print Dumper %erg;
    

    Als Denkanstoß.

    Siechfred

    --
    Ein Selbständiger ist jemand, der bereit ist, 16 Stunden am Tag zu arbeiten, nur um nicht 8 Stunden für einen Anderen arbeiten zu müssen.