EiP Übung 12.12.2014

Ähnliche Dokumente
EiP Übung

Zahlensysteme Das 10er-System

Grundlagen der Informatik

Zahlensysteme: Oktal- und Hexadezimalsystem

Mikro-Controller-Pass 1

Grundlagen der Informatik (BSc) Übung Nr. 5

BITte ein BIT. Vom Bit zum Binärsystem. A Bit Of Magic. 1. Welche Werte kann ein Bit annehmen? 2. Wie viele Zustände können Sie mit 2 Bit darstellen?

Inhalt. 1 Einleitung AUTOMATISCHE DATENSICHERUNG AUF EINEN CLOUDSPEICHER

Mit der Maus im Menü links auf den Menüpunkt 'Seiten' gehen und auf 'Erstellen klicken.

1 Einleitung. Lernziele. Symbolleiste für den Schnellzugriff anpassen. Notizenseiten drucken. eine Präsentation abwärtskompatibel speichern

Seriendruck mit der Codex-Software

Serienbrief mit Works 7.0

Internet online Update (Mozilla Firefox)

Datenexport aus JS - Software

AGROPLUS Buchhaltung. Daten-Server und Sicherheitskopie. Version vom b

Standard Daten-Backup-Script

Kurzanleitung zur Registrierung mit einer zugelassenen fortgeschrittenen

Daten verarbeiten. Binärzahlen

Übungskomplex Felder (1) Eindimensionale Felder Mehrdimensionale Felder

Mehrere PDF-Dokumente zu einem zusammenfügen

Kurzanleitung zur Bereitstellung von Sachverhalten und Lösungen zum Universitätsrepetitorium auf dem Server unirep.rewi.hu-berlin.

STRATO Mail Einrichtung Mozilla Thunderbird

Etikettendruck mit Works 7.0

Software WISO Hausverwalter 2014 Datenübernahme aus WISO Mein Geld Version / Datum V 1.0 /

BFV Widget Kurzdokumentation

AutoTexte und AutoKorrektur unter Outlook verwenden

Import der Schülerdaten Sokrates Web

Einrichtung Konto Microsoft Outlook 2010

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf Seite 1 von 18

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

Anleitung zum Einspielen der Demodaten

Anleitung über den Umgang mit Schildern

Anzahl Pseudotedraden: Redundanz: Weitere Eigenschaften?

1 Einleitung. Lernziele. Dokumente vergleichen. Änderungen mit Überarbeitungsfenster bearbeiten Lerndauer. 4 Minuten.

iphone-kontakte zu Exchange übertragen

GVService - Der GerichtsVollzieherService. Anleitung für das Onlinebanking mit dem GVService

Office 2007 Umsteiger Präsentationen für unterwegs vorbereiten

Aktivierung von Makros in den Erfassungshilfen

Erstellen der Barcode-Etiketten:

Anleitung So klappt der Downloadschnitt

Schrittweise Anleitung zur Installation von Zertifikaten der Bayerischen Versorgungskammer im Mozilla Firefox ab Version 2.0

Handbuch. NAFI Online-Spezial. Kunden- / Datenverwaltung. 1. Auflage. (Stand: )

Kurzeinführung Moodle

Vorgehensweise bei Lastschriftverfahren

WISO Mein Verein Einzug der Mitgliedsbeiträge per DTA-Datei Mai.2010

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen.

Praktikum zu Einführung in die Informatik für LogWiIngs und WiMas Wintersemester 2015/16. Vorbereitende Aufgaben. Präsenzaufgaben

Gimp Kurzanleitung. Offizielle Gimp Seite:

Einführung in die Programmierung

Anleitung für die Registrierung und das Einstellen von Angeboten

Grundlagen der Informatik Übungen 1.Termin

Windows. Workshop Internet-Explorer: Arbeiten mit Favoriten, Teil 1

Textverarbeitung - Fragen. a. Damit die Rechtschreibung Ihre Tipp- und Rechtschreibfehler nicht rot markiert.

Seriendruck mit der Codex-Software

ANLEITUNG - WIE UNTERSTÜTZE ICH AUF STARTNEXT?

Projekte Packen, Kopieren und Versenden

AUF LETZTER SEITE DIESER ANLEITUNG!!!

Hardware - Software - Net zwerke

Animationen erstellen

Export-/Importanleitung für Citavi und EndNote

Excel Pivot-Tabellen 2010 effektiv

1. Einführung. 2. Weitere Konten anlegen

Antolin-Titel jetzt automatisch in WinBIAP kennzeichnen

Arbeiten mit dem Outlook Add-In

Bayerische Versorgungskammer

icloud nicht neu, aber doch irgendwie anders

Gezielt über Folien hinweg springen

Internet online Update (Internet Explorer)

Übung - Datensicherung und Wiederherstellung in Windows 7

Ausfüllhilfe ESTA USA

Übung - Datenmigration in Windows 7

Konvertieren von Settingsdateien

Excel 2010 Kommentare einfügen

Anleitung zum erstellen einer PDF-Datei aus Microsoft Word

Microsoft PowerPoint 2013 Folien gemeinsam nutzen

Import und Export von Übergängern

Kurze Anleitung zum Guthaben-Aufladen bei.

Prüfung Computation, Programming

Druck von bzw. Scan auf USB-Stick

Stapelverarbeitung Teil 1

Erste Schritte. Lavid-F.I.S. Faktura. Erste Schritte

Kapitel I: Registrierung im Portal

Handbuch Internetmeldeportal für melde- und gebührenpflichtige Firmen der Agricura Meldung der Lagerbestände per 31.

Zahlensysteme. von Christian Bartl

Family Safety (Kinderschutz) einrichten unter Windows 7

Installationsleitfaden zum Fakturierungsprogramm

Würfelt man dabei je genau 10 - mal eine 1, 2, 3, 4, 5 und 6, so beträgt die Anzahl. der verschiedenen Reihenfolgen, in denen man dies tun kann, 60!.

Outlook 2010 Daten importieren und exportieren

Einrichten eines HBCI- Zugangs mit Bank X 5.1

Erstellen einer digitalen Signatur für Adobe-Formulare

Installation älterer Programmversionen unter Windows 7

Microsoft Access 2013 Navigationsformular (Musterlösung)

Wie man eigene Programme erstellt

Graphic Coding. Klausur. 9. Februar Kurs A

Massenversand Dorfstrasse 143 CH Kilchberg Telefon 01 / Telefax 01 / info@hp-engineering.com

Die Tabellenvorlage im Katalog für Tabellen speichern... 2 Weiteres zu Schnellbausteinkatalogen EDV + Didaktik - Dr. Viola Vockrodt-Scholz

Technische Informatik - Eine Einführung

2. Im Admin Bereich drücken Sie bitte auf den roten Button Webseite bearbeiten, sodass Sie in den Bearbeitungsbereich Ihrer Homepage gelangen.

Übung - Arbeiten mit CLI-Befehlen in Windows

Monatstreff für Menschen ab 50 Temporäre Dateien / Browserverlauf löschen / Cookies

Transkript:

Musterlösung zu Blatt 9: 1. Rechnen sie folgende Zahlen in Binärzahlen, Oktalzahlen und Hexadezimalzahlen um: a) 15, b) 22, c) 256, d) 512, e) 1024, f) 2048 (freiwillige Zusatzaufgabe: Gibt es eine Möglichkeit vcn einer Kodierungen in eine andere mit PERL umzurechnen? Schreiben Sie ein PERL Programm, das von Dezimal auf Oktal und Hexadezimal umrechnet) Dezimal Binär Oktal Hexadezimal 15 1111 17 F 22 10110 26 16 256 100000000 400 100 512 1000000000 1000 200 1024 10000000000 2000 400 2048 100000000000 4000 800 # Autor: Nicola Greth # Rechnet Dezimalzahlen in Binaer-, Oktal- und Hexadezimalzahlen um my ($dezimal, $eingabe, @oktal, $oktalergebnis, @hexadezimal, $hexadezimalergebnis, @binaer, $binaerergebnis); print"bitte geben Sie Ihre Dezimalzahl ein:>>>\n"; chomp($eingabe=<>); #Umrechnung in Binaer $dezimal = $eingabe; my $i = 0; while($dezimal > 0) $binaer[$i] = $dezimal%2; #speichert in @oktal den Rest von $dezimal : 2 $dezimal = int($dezimal/2); #Dezimalzahl wird durch 2 geteilt, int (damit der Rest abgeschnitten wird) $i++; @binaer = reverse(@binaer); $binaerergebnis = join("",@binaer); print"ihre Dezimalzahl $eingabe lautet $binaerergebnis in Binaerzahlen.\n"; 1

#Umrechnung in Oktal $dezimal = $eingabe; $i=0; while($dezimal > 0) $oktal[$i] = $dezimal%8; #speichert in @oktal den Rest von $dezimal : 8 $dezimal = int($dezimal/8); #Dezimalzahl wird durch 8 geteilt, int (damit der Rest abgeschnitten wird) $i++; @oktal = reverse(@oktal); $oktalergebnis = join("",@oktal); print"ihre Dezimalzahl $eingabe lautet $oktalergebnis in Oktalzahlen.\n"; #Umrechnung in Hexadezimal $dezimal = $eingabe; $i = 0; while($dezimal > 0) $hexadezimal[$i] = $dezimal%16; #speichert in @oktal den Rest von $dezimal : 16 if ($hexadezimal[$i] == 10) $hexadezimal[$i] = "A"; if ($hexadezimal[$i] == 11) $hexadezimal[$i] = "B"; if ($hexadezimal[$i] == 12) $hexadezimal[$i] = "C"; if ($hexadezimal[$i] == 13) $hexadezimal[$i] = "D"; if ($hexadezimal[$i] == 14) $hexadezimal[$i] = "E"; if ($hexadezimal[$i] == 15) $hexadezimal[$i] = "F"; $dezimal = int($dezimal/16); #Dezimalzahl wird durch 16 geteilt, int (damit der Rest abgeschnitten wird) $i++; @hexadezimal = reverse(@hexadezimal); $hexadezimalergebnis = join("",@hexadezimal); print"ihre Dezimalzahl $eingabe lautet $hexadezimalergebnis in Hexadezimalzahlen.\n"; 2

2. Wie sind folgende Zeichenketten in UTF-8 - und in ISO-LATIN-1 Kodierung abgespeichert? (Tipp: Speichern Sie die Wörter in einer utf8/isolatin1 Datei und betrachten Sie, analog zur Vorlesung, den octal Dump der Datei mit dem unix-befehl od ) a) Zeichenkette : 'Weiß' b) Zeichenkette : ''ÄäÜüÖö" in IsoLatin: 0000000 062527 157551 142012 156344 153374 000366 0000013 in UTF-8: 0000000 062527 141551 005237 102303 122303 116303 136303 113303 0000020 133303 0000022 In UTF-8 gibt es mehr Bytes, da Sonderzeichen und Umlaute als Mehrbytecharacter dargestellt werden. 3. Legen Sie eine neue Textdatei "inp.txt" an und schreiben Sie in die Datei das Wort "über". Öffnen Sie die Datei 'inp.txt' erneut im Editor und speichern Sie die Datei als ISO-LATIN Datei : iso.txt und als UTF-8 Datei utf8.txt ab. a) Wieviele Bytes stehen in de Datei inp.txt, iso.txt und der Datei utf8.txt? b) Welche Dateien sind identisch? c) Bestätigen sie das auch mit dem UNIX Befehl 'diff'. Wie lauten die UNIX Befehle? Wie lautet der OUTPUT von der UNIX Befehle? diff -qs inp.txt iso.txt diff -qs iso.txt utf8.txt diff -qs inp.txt utf8.txt welche Dateien identisch sind hängt davon ab in welcher Codierung inp.txt standardmäßig gespeichert wurde od inp.txt 4 Bytes/ 5 Bytes (hängt von standardmäßiger Codierung ab) od iso.txt 4 Bytes od utf8.txt 5 Bytes 3

4. Zwei Wörter sind Anagramme, wenn in ihnen die gleichen Buchstaben in beliebiger Reihenfolge vorkommen (oma<->mao). Schreiben Sie zwei PERL Programme, die testen ob zwei Wörter Anagramme sind. 1. Programm: read_2_anas.perl (beide Wörter einlesen) # Autor: Nicola Greth # Programm: Liest zwei Woerter ein und testet, ob es sich um Zwei Anagramme handelt use warnings; use locale; my ($word1, $word2, @buchst1, @buchst2); my $anagramme = "true"; print "Bitte geben Sie das erste Wort ein:>>>\n"; chomp($word1 = <>); $word1 = lc($word1); print "Bitte geben Sie das zweite Wort ein:>>>\n"; chomp($word2 = <>); $word2 = lc($word2); @buchst1 = split(//,$word1); @buchst2 = split(//,$word2); @buchst1 = sort(@buchst1); @buchst2 = sort(@buchst2); if(length($word1)!= length($word2)) $anagramme = "false"; print "Ihre Woerter sind keine Anagramme, da die Laenge nicht uebereinstimmt!\n"; for(my $i=0;$i<length($word1);$i++) if($buchst1[$i] ne $buchst2[$i]) $anagramme = "false"; if ($anagramme eq "true") print "$word1 und $word2 sind Anagramme!\n"; print "$word1 und $word2 sind keine Anagramme!\n"; 4

2. Programm: read_1_ana.perl und Aufgabe 5: # Autor: Nicola Greth # Programm: Liest zwei Woerter ein und testet, ob es sich um Zwei Anagramme handelt use warnings; use locale; my ($word_intern, $word2, @buchst1, @buchst2); my $anagramme = "true"; $word_intern = "oma"; print "Suchen Sie das Anagramm:>>>\n"; # Aufgabe 4 #print "Suchen Sie ein Anagramm zum wort $word_intern:>>>\n"; # Aufgabe 5 chomp($word2 = <>); $word2 = lc($word2); @buchst1 = split(//,$word_intern); @buchst2 = split(//,$word2); @buchst1 = sort(@buchst1); @buchst2 = sort(@buchst2); if(length($word_intern)!= length($word2)) $anagramme = "false"; print "Ihre Woerter sind keine Anagramme, da die Laenge nicht uebereinstimmt!\n"; for(my $i=0;$i<length($word_intern);$i++) if($buchst1[$i] ne $buchst2[$i]) $anagramme = "false"; if ($anagramme eq "true") print "$word_intern und $word2 sind Anagramme!\n"; print "$word_intern und $word2 sind keine Anagramme!\n"; 5

6./7./8.Funktioniert Ihr Programm auch bei Umlauten? Bauen Sie nun in Ihr Programm die Anweisung: use utf8; ein. Was passiert jetzt bei Anagrammen, die Umlauten, bzw. keine Umlaute enthalten? Rufen sie jetzt ihr PERL Programm mit der Option -C auf. Was passiert jetzt? Funktioniert nicht mit Umlauten. Mit use utf8; und perl-c funktioniert es auch mit Umlauten. Hinweis: achtet darauf dass ihr die Datei als utf8-datei speichert ( Speichern unter) 9. Schreiben Sie mit Hilfe von einfachen print Anweisungen, die Sie in Wiederholungsschleifen einbauen, ein PERL Programm, das folgende Ausgabe auf der Console erzeugt. Bemerkung: print soll nur einzelne Buchstaben wie Spaces, Slashes, Punkte, Tilde, Sterne, Eckige Klammern, Underline, Kommas usw. ausdrucken, alles andere soll mit Wiederholungsschleifen realisiert werden. # Autor: Nicola Greth # Programm: malt Weihnachtsbaum my $blank=" "; my $star="*"; my $forwardslash="/"; my $backslash="\\"; my $dot="."; my $comma=","; my $roof="^"; my $bracketleft="["; my $bracketright="]"; my $underscore="_"; my $newline="\n"; my $lines; my $width; print "Bitte geben Sie die Hoehe des Baumes ein (4-...): "; chomp($lines = <>); $width = ($lines/2); for(my $l=0;$l<$lines-1;$l++) #Leerzeichen am Anfang der Zeile for(my $w=0;$w<$width;$w++) print $blank; #fuer die erste Zeile if($l==0) print $star; $width--; 6

#fuer gerade Zeilen if($l%2==0) print $forwardslash; for(my $i=0;$i<$l-1;$i++) if($i%2==0) print $comma; print $dot; print $backslash; $width--; #fuer ungerade Zeilen elsif($l%2!=0) print $forwardslash; for(my $i=0;$i<$l;$i++) if($i%2==0) print $dot; print $comma; print $backslash; print $newline; for(my $i=0;$i<$lines/2-1;$i++) print $roof; print $bracketleft; print $underscore; print $bracketright; for(my $i=0;$i<($lines/2)-1;$i++) print $roof; print $newline; 7

oder: Musterlösung der Gruppe Sophia Antonin: my $i; my $z; for ($i=6; $i>0; $i--) if ($i == 6) print " "x$i."*\n"; $z=1; while ($z < 3) print " "x$i."/"; if ($z == 1) print ".".",."x(5-$i)."\\\n"; print ",".".,"x(5-$i)."\\\n"; $z++; print "^"x(5)."[_]"."^"x(5)."\n"; 8