Modellierung und Simulation - Objektorientierte Programmierung: Unterschied zwischen den Versionen
Zur Navigation springen
Zur Suche springen
Keine Bearbeitungszusammenfassung |
|||
| Zeile 7: | Zeile 7: | ||
=Aufgabe 9.1 Strukturen und Klassen= | =Aufgabe 9.1 Strukturen und Klassen= | ||
Erstellen Sie den <code>struct person</code> mit den Datenfeldern: | |||
* Strasse, | * Strasse, | ||
* Hausnummer, | * Hausnummer, | ||
| Zeile 13: | Zeile 13: | ||
* Ort, | * Ort, | ||
* Geburtsdatum [Array aus 3 Zahlen]. | * Geburtsdatum [Array aus 3 Zahlen]. | ||
Legen Sie 3 Personen an. | |||
{| role="presentation" class="wikitable mw-collapsible mw-collapsed" | {| role="presentation" class="wikitable mw-collapsible mw-collapsed" | ||
| <strong>struct <code>Person.m</code> </strong> | | <strong>struct <code>Person.m</code> </strong> | ||
Version vom 23. Mai 2025, 06:37 Uhr
| Autor: | Prof. Dr.-Ing. Schneider |
| Termin: | 23.05.2025 |
Aufgabe 9.1 Strukturen und Klassen
Erstellen Sie den struct person mit den Datenfeldern:
- Strasse,
- Hausnummer,
- Postleitzahl,
- Ort,
- Geburtsdatum [Array aus 3 Zahlen].
Legen Sie 3 Personen an.
struct Person.m
|
person = struct( 'Name', 'Hannah', ...
'Telnr', '0815', ...
'Strasse', 'Hamb. Str.', ...
'Hausnr', 75 );
|
| Musterlösung 9.1 |
person = struct( 'Name', 'Hannah', ...
'Telnr', '0815', ...
'Strasse', 'Hamb. Str.', ...
'Hausnr', 75,...
'Postleitzahl',59555,...
'Ort','Lippstadt',...
'Geburtsdatum',[1,1,1920] );
|
Aufgabe 9.2 Strukturen und Klassen
Erweitern Sie die Klasse Person um weitere Eigenschaften, analog zur vorherigen Aufgabe. Passen Sie auch die Funktionen getPerson und printPerson daran an.
Klasse Person.m
|
classdef Person
% Eigenschaften
properties
name = '';
telnr = 0;
end % properties
% Methoden
methods
% Konstruktor
function o = Person( name, telnr )
o.name = name;
o.telnr = telnr;
end
function print( o )
fprintf( 'Name: %s, Tel.Nr.: %g.\n', ...
o.name, o.telnr );
end
function info( o )
fprintf( 'Telefonnummer %g gehört zu %s.\n', ...
o.telnr, o.name );
end
end % methods
end % classdef
|
Klasse Person.m
|
| Musterlösung 9.2 |
%
% pers = Array mit Elementen der Klasse Person
%
function pers = getPerson( anz )
for( n = 1:anz ) % Einleseschleife: von 1 bis anz
name = input( 'Name: ', 's' ); % als Text
telnr = input( 'Tel.-Nr.: ' ); % als Zahl
str = input( 'Strasse: ', 's' ); % als Text
hnr = input( 'Haus.-Nr.: ' ); % als Zahl
plz = input( 'PLZ: ' ); % als Zahl
ort = input( 'Ort: ', 's' ); % als Text
% neues n-tes Objekt von Person
pers(n) = Person( name, telnr, str, hnr, plz, ort );
end
end
%
% pers = Array mit Elementen der Klasse Person
%
function printPerson( pers )
anz = length( pers ); % Zahl der Personen
fprintf( '\nMeine Freunde : \n' ); % Überschrift
fprintf( '---------------\n' );
for( n = 1:anz ) % Ausgabeschleife
pers(n).print;
end
end
|
Aufgabe 9.4 Strukturen und Klassen
| Musterlösung 9.3 |
Aufgabe 9.4 Strukturen und Klassen
| Musterlösung 9.3 |
Aufgabe 9.5 Strukturen und Klassen
| Musterlösung 9.5 |
→ zurück zum Hauptartikel: BSE Modellierung und Simulation - SoSe25