Softwareentwicklung 2 (ILV) Übung 1



Ähnliche Dokumente
Fakultät Angewandte Informatik Lehrprofessur für Informatik

Outlook. sysplus.ch outlook - mail-grundlagen Seite 1/8. Mail-Grundlagen. Posteingang

Klausur in Programmieren

Binäre Bäume. 1. Allgemeines. 2. Funktionsweise. 2.1 Eintragen

Programmierkurs Java

Geschrieben von: Stefan Sonntag, den 26. Juni 2011 um 09:45 Uhr - Aktualisiert Sonntag, den 26. Juni 2011 um 10:12 Uhr

1 Vom Problem zum Programm

Klausur in Programmieren

Übung Grundlagen der Programmierung. Übung 03: Schleifen. Testplan Testergebnisse

Schumacher, Chris Druckdatum :11:00

Downloadfehler in DEHSt-VPSMail. Workaround zum Umgang mit einem Downloadfehler

Installation und Aktualisierung der VMware-Tools

Digi Vox Ultimate Pro

Einführung in die Programmierung (EPR)

UP4DAR HOWTO: Firmware-Update via RS232- Schnittstelle

Aufgaben zur C-Programmierung für die Praktikumsperiode des 1.Semesters

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

Systemvoraussetzung < zurück weiter >

SafeLine GL1. Anschluss-und Programmierungs-handbuch. GSM-Alternative für unsere Aufzugtelefone. (GSM-Line)

Ingenieurinformatik Diplom-FA (C-Programmierung)

Was ich als Bürgermeister für Lübbecke tun möchte

Ingenieurinformatik Diplom-FA (Teil 2, C-Programmierung)

Zeichen bei Zahlen entschlüsseln

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

DURCH VIDA ERZEUGTE PROTOKOLLDATEIEN 1 EINFÜHRUNG

2. Semester, 2. Prüfung, Lösung

Installation von horizont 4 bei Verwendung mehrerer Datenbanken

Fachhochschule Deggendorf Platzziffer:...

5 DATEN Variablen. Variablen können beliebige Werte zugewiesen und im Gegensatz zu

Übungsblatt 3: Algorithmen in Java & Grammatiken

Kurz-Anleitung Veranstaltungskalender AHG

Programmablauf für die Batch Wlan Komplettpakete mit Windows CE

trivum Multiroom System Konfigurations- Anleitung Erstellen eines RS232 Protokolls am Bespiel eines Marantz SR7005

INFORMATIONEN ZUR INSTALLATION UNTER MACOS X 10.4 ODER HÖHER

Installation und Inbetriebnahme von Microsoft Visual C Express

Angaben zu einem Kontakt...1 So können Sie einen Kontakt erfassen...4 Was Sie mit einem Kontakt tun können...7

Installation OMNIKEY 3121 USB

Installation LehrerConsole (für Version 6.2)

Übung: Verwendung von Java-Threads

Informatik 1 Tutorial

Kommunikations-Management

Kontrollstrukturen und Funktionen in C

Übung - Arbeiten mit Android

Die Programmiersprache C99: Zusammenfassung

DIGITALVARIO. Anleitung Bootloader. Ausgabe 0.1 deutsch für Direkt-Digital-Vario. Firmware ab Hardware 01 Seriennummer ab 0003

Übungen zu C++ Kapitel 1

Was meinen die Leute eigentlich mit: Grexit?

Webalizer HOWTO. Stand:

Professionelle Seminare im Bereich MS-Office

Einführung in die C++ Programmierung für Ingenieure

Kundenleitfaden zur Sicheren per WebMail

Stellen Sie bitte den Cursor in die Spalte B2 und rufen die Funktion Sverweis auf. Es öffnet sich folgendes Dialogfenster

Booster Box. Kurzanleitung. FAPr-hsp 5110

Mit einem Mausklick sind s aus ACT! heraus in Outlook geschrieben, die dann wiederum auf Wunsch in ACT! dokumentiert werden.

MSXFORUM - Exchange Server 2003 > SMTP Konfiguration von Exchange 2003

Hochschule München, FK 03 FA SS Ingenieurinformatik

MSK 120 ( ) auf MSK 120/CO ( )

Sichere Anleitung Zertifikate / Schlüssel für Kunden der Sparkasse Germersheim-Kandel. Sichere . der

Installationsanleitung Maschinenkonfiguration und PP s. Release: VISI 21 Autor: Anja Gerlach Datum: 18. Dezember 2012 Update: 18.

Übungskomplex Felder (1) Eindimensionale Felder Mehrdimensionale Felder

Übungen Programmieren 1 Felix Rohrer. Übungen

K. Hartmann-Consulting. Schulungsunterlage Outlook 2013 Kompakt Teil 1

M. Graefenhan Übungen zu C. Blatt 3. Musterlösung

Programmieren in C. Macros, Funktionen und modulare Programmstruktur. Prof. Dr. Nikolaus Wulff

Anleitung zur Installation und Nutzung des Sony PRS-T1 ebook Readers

Anleitung zur Installation und Nutzung des Sony PRS-T1 ebook Readers

Wir wünschen Ihnen viel Freude und Erfolg mit Ihrem neuen X-PRO-USB-Interface. Ihr Hacker-Team

Klausur in Programmieren

CU-R-CONTROL. Beschreibung zur Schaltung ATMega16-32+ISP MC-Controller Steuerung auf Basis ATMEL Mega16/32. Autor: Christian Ulrich

Abwesenheitsnotiz im Exchangeserver 2010

Dr. Monika Meiler. Inhalt

Technische Hochschule Georg Agricola WORKSHOP TEIL 3. IKT (Informations- und Kommunikationstechnik) an einer MorseApp erklärt

Um überhaupt produktiv arbeiten zu können, sind eine Reihe grundlegender Vorbereitungen notwendig:

Rechnernetze Praktikum. Versuch 5: Linux embedded. Ziel

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

Zahlenmauern. Dr. Maria Koth. Ausgehend von dieser einfachen Bauvorschrift ergibt sich eine Vielzahl an möglichen Aufgabenstellungen.

Orientierungstest für angehende Industriemeister. Vorbereitungskurs Mathematik

Quick Guide Mitglieder

Installationsanleitung CFM TWAIN 7.00 STI

Bedienungsanleitung. FarmPilot-Uploader

Unterprogramme. Funktionen. Bedeutung von Funktionen in C++ Definition einer Funktion. Definition einer Prozedur

Erstellen einer in OWA (Outlook Web App)

ERSTE SCHRITTE.

Artikel Schnittstelle über CSV

M a i l C r e d i t. \\Burt\user\Soutschek\FP\Technik\Frankiermaschinen\00_PC Software\MailCredit\Anleitung MailCredit Installation.

Wichtige Information zur Verwendung von CS-TING Version 9 für Microsoft Word 2000 (und höher)

Informatik Repetitorium SS Volker Jaedicke

NEVARIS Umstellen der Lizenz bei Allplan BCM Serviceplus Kunden von der NEVARIS SP Edition auf NEVARIS Standard/Professional

Anleitung zur Nutzung des SharePort Utility

CocoaPods Schnelleinstieg

Anleitung für die Teilnahme an den Platzvergaben "Studio II, Studio IV und Studio VI" im Studiengang Bachelor Architektur SS15

1. das es keiner Ausdrucke mehr für die Formwertrichter bedarf 2. das die Korrekturen vom Richter selbst an seinem PC durchgeführt werden können.

Steganos Secure Schritt für Schritt-Anleitung für den Gastzugang SCHRITT 1: AKTIVIERUNG IHRES GASTZUGANGS

Befehlssatz zum High Speed Interface-88-USB (HSI-88-USB) (ab Firmware 0.71) (Version 1.2)

Abwesenheitsnotiz im Exchange Server 2010

ACHTUNG: Es können gpx-dateien und mit dem GP7 aufgezeichnete trc-dateien umgewandelt werden.

Installationshinweise Linux Edubuntu 7.10 bei Verwendung des PC-Wächter

Stellvertretenden Genehmiger verwalten. Tipps & Tricks

Orange Booster Box. Kurzanleitung. FAPr-hsp 5110

Transkript:

Fragen: Softwareentwicklung 2 (ILV) Übung 1 1.) Was ist Git? (siehe http://de.wikipedia.org/wiki/git ) git clone https://its-git.fh-salzburg.ac.at/eforsthofer.lba/swe2.git 2.) Was sind Zeiger und wie wird mit Zeigern gearbeitet? (siehe C von A Z von Jürgen Wolf, Kapitel 12 Zeiger ) 3.) Wie arbeitet man mit Array von Zeiger und dynamischer Speicherverwaltung? (siehe C von A Z von Jürgen Wolf, Kapitel 14 Dynamische Speicherverwaltung ) 4.) Warum funktioniert das Programm nicht? void swap (int *a, int *b){ int *help; *help= *a; *a= *b; *b= help; } Aufgabenstellungen: (Abgabetermin: Per EMail vor nächster Übungseinheit) 1.) Arbeitsaufgabe Funktion swap Ergänze und Teste das Beispiel aus dem Skriptum Zeiger und Arrays/String Seite 5/25. // swap2.c --- call by reference #include <stdio.h> void swap (.. ); int main(){ int x= 1111; int y= 9999; } printf("\nvor dem Aufruf von swap(): x=%d und y=%d\n", x,y); swap (.. ); printf("\nnach dem Aufruf von swap(): x=%d und y=%d\n", x,y); return 0; void swap (.. ){ int help;.. } SWE1 ITSB-B SS 2015 Seite 1/6

2.) Programm swab void swab(const char *from, char *to, int n); Schreibe eine Funktion swab welches gerade und ungerade Bytes/Zeichen vertauscht. Die Länge des Arrays wird durch n definiert. Die Funktion swab() sollte swap() n/2 mal aufrufen. Diese Funktion könnte benutzt werden um Daten zwischen Maschinen auszutauschen, die verschiedene Anordnungen von nieder- und höherwertigen Bytes haben. Aufrufbeispiel: $./swab Vor dem Aufruf von swab(): string=ab1234 Nach dem Aufruf von swab(): string=ba2143 3.) Schreibe Sie eine Funktion mit dem Namen find_min_max, welche ein Array von Zahlen übergeben bekommt, und die kleinste Zahl und die größte Zahl zurückliefert. 4.) Schreiben Sie eine Funktion mit dem Namen strcatdyn, welches die Zeiger auf zwei Zeichenketten entgegennimmt. Die Funktion soll beide Zeichenketten hintereinander in einem von der Funktion dynamisch angelegten Speicherbereich kopieren und den Zeiger zurückgeben. Im Fehlerfall soll ein Nullzeiger (NULL) zurückgeben werden. Die Verwendung von Stringfunktionen aus der Stringbibliothek (siehe string.h) ist erlaubt. char *strcatdyn(const char *str1, const char *str2); SWE1 ITSB-B SS 2015 Seite 2/6

5.) Schreiben Sie ein Programm mit dem Namen MorseCode, welches Zeichen von stdin einliest und die Signalinformation ( '=' Licht ein / '_' Licht aus) auf stdout ausgibt. Testvorschrift: cat info.txt./morsecode > Mein.MorseCode.Signal Die Datei Mein.MorseCode.Signal wird an Kollegen mit geeigneter Hardware weitergereicht welche die Tests uebernehmen. Infos siehe http://de.wikipedia.org/wiki/morsezeichen Die Morsezeichen, manchmal auch Morsealphabet oder Morsecode genannt, sind ein Verfahren zur Übermittlung von Buchstaben, Zahlen und übrigen Zeichen. Dabei wird ein konstantes Signal ein- und ausgeschaltet. Es besteht aus drei Symbolen: kurzes Signal, langes Signal und Pause. Der Code kann als Tonsignal, als Funksignal, als elektrischer Puls mit einer Morsetaste über eine Telefonleitung, mechanisch oder optisch (etwa mit blinkendem Licht) übertragen werden. http://de.wikipedia.org/wiki/morsezeichen#zeitschema_und_darstellung Der Code verwendet drei Symbole, die Punkt ( ), Strich ( ) und Pause ( ) genannt werden, gesprochen als dit, dah (oder doh) und Schweigen. Die Länge eines Dit bestimmt die Geschwindigkeit, mit der gesendet werden kann, und ist die grundlegende Zeiteinheit. Dazu ein Beispiel: / M O R S E (space) C O D E Genauer gilt Folgendes: Ein Dah ist dreimal so lang wie ein Dit. Die Pause zwischen zwei gesendeten Symbolen ist ein Dit lang. Zwischen Buchstaben in einem Wort wird eine Pause von der Länge eines Dah (oder drei Dits) eingeschoben. Die Länge der Pause zwischen Wörtern entspricht sieben Dits. Für das Beispiel MORSE CODE ergibt sich dann dieses Zeitsignal (das Zeichen = bedeutet Signal an, das Zeichen _ bedeutet Signal aus ): ===_=== ===_===_=== =_===_= =_=_= = ===_=_===_= ===_===_=== == =_=_= = Gesprochen klingt das dann so: dahdah dahdahdah ditdahdit ditditdit dit, dahditdahdit dahdahdah dahditdit dit. SWE1 ITSB-B SS 2015 Seite 3/6

*6.) OpenHardware / Raspberry PI Clone: git clone https://its-git.fh-salzburg.ac.at/eforsthofer.lba/swe_pi.git Date: SS2015 Doit: PI + Funkschalter ----------------- Funksteckdosen via Raspberry Pi über das Terminal, Webinterface oder Siri steuern siehe http://alexbloggt.com/funksteckdosen-raspberry-pi-teil1/ 1. Hardware aufbauen Technische Daten Sender / Transmitter XY-FST: (3 Pins, DATA-VCC-GND von vorne) Betriebsspannung: 3,5-12V DC Reichweite: 20-200m (Abhängig von der Betriebsspannung) Betriebsart: AM Übertragungsrate: 4KB / s Sendeleistung: 10mW Sendefrequenz: 433Mhz Abmessungen: 19 x 19mm Pinbelegung: Data, VCC, Masse (von links nach rechts) Technische Daten Empfänger / Receiver XY-MK-5V (4 Pins ) Betriebsspannung: 5V DC Empfangsfrequenz: 433Mhz Empfindlichkeit: -105dB Abmessungen: 30 x 14mm Sender GND DATA VCC Raspberry Pi GND GPIO17 5V GPIO17 bzw. Pin 11 verwenden siehe http://www.gtkdb.de/index_18_2520.html 2. Software installieren # PI auf neusten Softwarestand bringen sudo apt-get upgrade sudo apt-get update # Git-Client installieren sudo apt-get install git-core # WiringPI installieren git clone git://git.drogon.net/wiringpi cd wiringpi./build #Raspberry-Remote von xkonni installieren cd ~ git clone git://github.com/xkonni/raspberry-remote.git cd raspberry-remote make send 3. Steckdose schalten Befehl nach dem Schema sudo./send <Hauscode> <Steckdosennummer> <Zustand 1 AN, 0 AUS> # Einschalten mit sudo./send 11111 2 1 SWE1 ITSB-B SS 2015 Seite 4/6

SWE1 ITSB-B SS 2015 Seite 5/6

*7.) Schreiben Sie ein Programm mit dem Namen SortANum, welches Argumente über die Kommandozeile entgegennimmt und diese sortiert auf stdout ausgibt. Bei den Argumenten handelt es sich um ganzzahlige 32-Bit-Werte. Das Programm soll folgende Optionen unterstützen: SortArgv [Option] N1 [, N2, N3 ] Option Beschreibung -h Gibt eine kurze Beschreibung der Optionen aus. -a Sortiert aufsteigend (default) -d Sortiert absteigend Wird das Programm ohne Argumente aufgerufen, sollte ebenfalls eine kurze Beschreibung zum Programm auf stdout ausgegeben werden. Aufrufbeispiele: $>./SortArgv 17 12 23 5 5 12 17 23 $>./SortArgv d 17 12 23 5 23 17 12 5 $>./SortArgv h SORTARGV [Option] N1 [, N2, N3 ] Sortiert vorzeichenlose 32Bit-Integer. Option Beschreibung -h Gibt eine kurze Beschreibung der Optionen aus. -a Sortiert aufsteigend (default) -d Sortiert absteigend SWE1 ITSB-B SS 2015 Seite 6/6