BACHELORARBEIT. Herr Matthias Maul. Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3)

Größe: px
Ab Seite anzeigen:

Download "BACHELORARBEIT. Herr Matthias Maul. Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3)"

Transkript

1 BACHELORARBEIT Herr Matthias Maul Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3) Roßwein, 2013

2 Fakultät Maschinenbau BACHELORARBEIT Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3) Autor: Matthias Maul Studiengang: Stahl- und Metallbau Seminargruppe: SM09w1-B Erstprüfer: Prof. Dr.-Ing. Torsten Laufs Zweitprüfer: Prof. Dr. rer. pol. Silke Meyer Einreichung: Roßwein,

3 Bibliografische Beschreibung: Maul, Matthias: Entwicklung einer Anwendung zur Nachweisführung von Stahlbauteilen nach DIN EN 1993 (EC3) Seiten Mittweida, Hochschule Mittweida, Fakultät Maschinenbau, Bachelorarbeit, 2013 Referat: Die Einführung europäischer Regeln macht es notwendig, neue Verfahren zur Nachweisführung von Stahlbauteilen anzuwenden. Ziel des Bachelorprojekts ist die Entwicklung eines Computerprogramms, das zur Nachweisführung von Stahlbauteilen dient. Grundlage für das Programm bilden die allgemeinen Bemessungsregeln für den Hochbau nach DIN EN Im theoretischen Teil des Bachelorprojekts werden die Abläufe zur Nachweisführung nach DIN EN 1993 aufgestellt. Daraus werden Struktogramme entwickelt und nach diesen das Computerprogramm erstellt. Die Ergebnisse, die ausgegeben werden, werden mit vorhandenen Berechnungen verglichen.

4 I Inhaltsverzeichnis 1 Einleitung Ziel der Arbeit Abgrenzung Bemessungsregeln nach EC Überblick zum Eurocode Klassifizierung der Querschnittsklassen Bemessungsalgorithmen nach DIN EN Querschnittsnachweise (Einzelnachweise) Zugbeanspruchungsnachweis Druckbeanspruchungsnachweis Nachweis einachsiger Biegebeanspruchung Nachweis der Querkraft ohne Torsion Querschnittsnachweise (kombinierte Nachweise) Interaktionsnachweis aus Querkraft und Torsion Nachweis der Biegung und zugehöriger Quer- und Normalkraft Algorithmen für Querschnittsklasse 1 und Algorithmen für Querschnittsklasse Algorithmen für Querschnittsklasse Nachweis zweiachsiger Biegung Stabilitätsnachweise Nachweis gegen Biegeknicken Nachweis gegen Biegedrillknicken Nachweis für auf Druck und Biegung beanspruchte Bauteile Einführung in die Programmierung Allgemeines zum Projekt Programmerstellung Das Struktogramm...38

5 II 3.4 Erstellung des Quelltextes Das Hauptprogramm Variablen Operatoren Kontrollstrukturen Bedingungen: if-else Mehrfachbedingungen: switch Schleifen Das Kompilieren eines Programms Vorstellung der Programmierumgebung Syntax-Hervorhebung Erstellen eines neuen Projektes Hauptdatei und Formulare Hauptdatei Formulare Steuerelemente Ereignisse Darstellung des Computerprogramms Überblick zum Programm Einbinden einer Datenbank Ausgeben der angezeigten Werte Textfelder Hauptmenü Einzelnachweise Nachweis der Zugbeanspruchung Nachweis der Druckbeanspruchung Nachweis der einachsigen Biegebeanspruchung Nachweis der Querkraftbeanspruchung ohne Torsion Kombinierte Nachweise Nachweis von Querkraft und Torsion Nachweis der Biegung um die y-achse, zugehöriger Quer- und Normalkraft Nachweis der Biegung um die z-achse, zugehöriger Quer- und Normalkraft Nachweis zweiachsiger Biegung, dazugehörige Querkräfte und Normalkraft..77

6 III 5.5 Stabilitätsnachweise Nachweis auf Druck beanspruchter Stäbe Stabilitätsnachweis bei einachsiger Biegebeanspruchung Stabilitätsnachweis bei Druck- und Biegebeanspruchung Versionsgeschichte Vergleichende Berechnungen Beispiel 1: Tragfähigkeit eines Querschnitts unter M y und V z Beispiel 2: Nachweis eines HEB 300 mit M y, V z, N Beispiel 3: Pendelstütze Beispiel 4: BDK Einfeldträger Beispiel 5: Fassadenstütze mit Biegebeanspruchung Vergleich der Ergebnisse Zusammenfassung...97 Abbildungsverzeichnis...98 Tabellenverzeichnis Literaturverzeichnis Selbstständigkeitserklärung

7 1 Einleitung -1-1 Einleitung 1.1 Ziel der Arbeit Die Einführung europäischer Regeln macht es notwendig, neue Verfahren zur Nachweisführung von Stahlbauteilen anzuwenden. Berechnungen von Hand sind aufwendig, benötigen viel Zeit und beinhalten eine größere Rechenfehler-wahrscheinlichkeit. Um die Nachweise schneller und sicherer führen zu können, werden Computerprogramme eingesetzt, bei denen über Eingabemenüs die entsprechenden Nachweise geführt werden. Es existieren bereits Programme, die mit dem Tabellenkalkulationsprogramm Microsoft Excel geschrieben wurden. Diese haben den Nachteil, dass keine klaren Strukturen erkennbar sind. Daher werden diese Programme schnell unübersichtlich. Außerdem sind sie an ein Betriebssystem von Microsoft gebunden sind. Darum wurde das Computerprogramm, dass im Laufe dieser Bachelorarbeit entwickelt wurde, in der Programmiersprache C++ geschrieben. Dadurch kann das Programm auch auf anderen Betriebssystemen ausgeführt werden, unabhängig davon, mit welchem Betriebssystem programmiert wird. Außerdem kann das Design der Anwendung vom Programmierer besser bestimmt werden. So kann das Programm benutzerfreundlicher gestaltet werden. Ziel des Bachelorprojekts ist die Entwicklung eines Computerprogramms, das zur Nachweisführung von Stahlbauteilen dient. Grundlage für das Programm bilden die allgemeinen Bemessungsregeln für den Hochbau nach DIN EN (Dezember 2010). Die Anwendung soll die Querschnitts- und Stabilitätsnachweise für einzelne Stahlbauteile anzeigen. Die Anwendung wird mittels Microsoft Visual Studio 2010 Professional programmiert, das über das Programm DreamSpark von Microsoft bereitgestellt wird. Im theoretischen Teil des Bachelorprojekts werden die Abläufe zur Nachweisführung nach DIN EN 1993 aufgestellt. Daraus werden Struktogramme entwickelt und nach diesen das Computerprogramm erstellt. Außerdem werden Einblicke in die Programmierung gegeben. Das Hauptmenü und die einzelnen Nachweise werden in separaten Fenstern angezeigt, die im Laufe der Bachelorarbeit vorgestellt werden. Die Ergebnisse, die ausgegeben werden, werden mit vorhandenen Berechnungen verglichen.

8 1 Einleitung Abgrenzung Das Computerprogramm wird mit Hilfe von Microsoft Visual Studio entwickelt und getestet. Das entwickelte Programm beinhaltet nur Nachweise im Grenzzustand der Tragfähigkeit nach den allgemeinen Bemessungsregeln nach DIN EN Besondere Regeln, z.b. für den Brandfall oder für die Bemessung von Kranbahnen, werden nicht berücksichtigt. Die entsprechenden Querschnitts- und Stabilitätsnachweise werden auf Grundlage von Schnittgrößen geführt. Diese müssen in den entsprechenden Eingabefeldern im Programm eingegeben werden. Besondere Regelungen für hochfeste Stähle werden nicht berücksichtigt. Aus diesem Grund bietet das Programm nur eine Auswahl von Stahlgüten (S235 bis S460). Die Stabilitätsnachweise werden mit dem Ersatzstabverfahren geführt. Besondere Regelungen für das Beulen von plattenförmigen Bauteilen nach DIN EN sowie Regelungen für mehrteilige Bauteile werden in diesem Bachelorprojekt nicht berücksichtigt. Auf Regelungen, die Anschlüsse sowie deren Verbindungsmittel betreffen, werden nicht eingegangen. Zur Nachweisführung von Stahlbauteilen ist es notwendig, den gegebenen Querschnitt in eine der 4 Querschnittsklassen einzuordnen. Im theoretischen Teil wird zwar die Vorgehensweise zur Querschnittsklassifizierung erklärt, jedoch wird diese im folgenden Projekt nicht weiter betrachtet. Es wird lediglich ein von Matthias Maul erstelltes Programm, die gegebene Querschnitte in ihre Querschnittsklasse einordnet, in dieses Projekt integriert, sodass dieser Aspekt der Nachweisführung abgedeckt werden kann. Das entwickelte Programm prüft nicht die Richtigkeit dieser Eingabe. Entsprechend der Querschnittsklasse wird vom Programm das jeweilige Verfahren zur Nachweisführung ausgewählt. Im Fall der Querschnittsklassen 1 und 2 wird das plastische Verfahren, bei Querschnittsklasse 3 das elastische Verfahren genutzt. Wenn vom Benutzer Querschnittsklasse 4 gewählt wurde wird das elastische Verfahren am effektiven Querschnitt angewendet. Die effektiven Querschnittswerte müssen von Hand berechnet und an den entsprechenden Stellen in das Programm eingegeben werden. Im Zuge der Bachelorarbeit werden keine praktischen Versuche durchgeführt. Um die Ergebnisse des Programms dennoch überprüfen zu können, werden sie mit theoretischen Beispielen, die [L3] entnommen wurden, verglichen.

9 2 Bemessungsregeln nach EC Bemessungsregeln nach EC3 In diesem Kapitel werden die Grundlagen aufgezeigt, die benötigt werden, um die Nachweisführung von Stahlbauteilen nach DIN EN 1993 durchzuführen. Dafür wird ein kurzer Einblick in die Klassifizierung von Querschnitten gegeben und Ablaufdiagramme für die einzelnen Nachweise aufgestellt. 2.1 Überblick zum Eurocode Auf der Grundlage der Römischen Verträge wurde 1975 von der Kommission der Europäischen Gemeinschaften ein Programm für das Bauwesen beschlossen. Dieses Programm beinhaltet die Ausarbeitung von einheitlichen technischen Regelwerken für die Tragwerksplanung von Bauwerken. Die Regelwerke sollten zunächst als Alternative zu den bestehenden Vorschriften gelten und sie schließlich ersetzen. Das Eurocode-Programm umfasst die folgenden Normen, die in der Regel aus mehreren Teilen bestehen: EN 1990 Eurocode, Grundlagen der Tragwerksplanung. EN 1991 Eurocode 1, Einwirkung auf Tragwerke. EN 1992 Eurocode 2, Entwurf, Berechnung und Bemessung von Stahlbetonbauten. EN 1993 Eurocode 3, Entwurf, Berechnung und Bemessung von Stahlbauten. EN 1994 Eurocode 4, Entwurf, Berechnung und Bemessung von Stahl-Beton- Verbundbauten. EN 1995 Eurocode 5, Entwurf, Berechnung und Bemessung von Holzbauten. EN 1996 Eurocode 6, Entwurf, Berechnung und Bemessung von Mauerwerksbauten. EN 1997 Eurocode 7, Entwurf, Berechnung und Bemessung in der Geotechnik. EN 1998 Eurocode 8, Auslegung von Bauwerken gegen Erdbeben. EN 1999 Eurocode 9, Entwurf, Berechnung und Bemessung von Aluminiumkonstruktionen. [N1, S. 6] Die Fassung eines Eurocodes enthält u.a. einen nationalen Anhang. Dieser nationale Anhang enthält Informationen, die im Eurocode für nationale Entscheidungen offen gelassen wurden. Sie sind bei der Tragwerksplanung für das jeweilige Land unbedingt zu beachten.

10 2 Bemessungsregeln nach EC3-4- Die Parameter des nationalen Anhangs umfassen: Zahlenwerte für Teilsicherheitsbeiwerte und/oder Klassen, wo die Eurocodes Alternativen eröffnen, Zahlenwerte, wo die Eurocodes nur Symbole angeben, Landesspezifische, geographische und klimatische Daten, die nur für ein Mitgliedsland gelten, z. B. Schneekarten; Vorgehensweisen, wenn die Eurocodes mehrere zur Wahl anbieten; Vorschriften zur Verwendung der informativen Anhänge, Verweise zur Anwendung des Eurocodes, soweit diese ergänzen und nicht widersprechen. [N1, S. 7f] 2.2 Klassifizierung der Querschnittsklassen Bevor die Nachweise geführt werden können, ist es notwendig Profile über das c/t-verhältnis druckbeanspruchter Querschnittsteile in eine der vier Querschnittsklassen (QK) einzuteilen. Querschnitte der Klasse 1: können plastische Gelenke oder Fließzonen mit ausreichender plastischer Momententragfähigkeit und Rotationskapazität für die plastischen Berechnung ausbilden. Querschnitte der Klasse 2: können die plastische Momententragfähigkeit entwickeln, haben aber aufgrund örtlichen Beulens nur eine begrenzte Rotationskapazität. Querschnitte der Klasse 3: erreichen für eine elastische Spannungsverteilung die Streckgrenze in der ungünstigsten Querschnittsfaser, können aber wegen örtlichen Beulens die plastische Momententragfähigkeit nicht entwickeln. Querschnitte der Klasse 4: sind solche, bei denen örtliches Beulen vor Erreichen der Streckgrenze in einem oder mehreren Teilen des Querschnitts auftritt. [N2, S. 44]

11 2 Bemessungsregeln nach EC3-5- Die Einteilung des Profils in eine dieser Querschnittsklassen gibt Informationen, nach welchen Verfahren die Beanspruchbarkeit der Profile (plastisch oder elastisch) berechnet werden kann. Für die Nachweise von Profilen der Querschnittsklassen 1 und 2 können plastische Querschnittwerte genutzt werden. Für Profile der Querschnittsklasse 3 sind elastische Querschnittswerte zu benutzen. Bei Profilen der Querschnittsklasse 4 müssen die wirksamen Querschnittswerte nach EN berechnet werden. QK Rotationsvermögen Verfahren zur Bestimmung der Beanspruchungen Verfahren zur Bestimmung der Beanspruchbarkeit 1 hoch plastisch plastisch 2 gering elastisch plastisch 3 keines elastisch elastisch 4 keines elastisch elastisch, am effektiven Querschnitt Tabelle 1 Querschnittsklassen [L1 Tab. 8.8a, S. 8.8]

12 2 Bemessungsregeln nach EC3-6- Tabelle 2 Klassifizierung druckbeanspruchter Querschnittsteile [N2, Tab 5.2, S. 46]

13 2 Bemessungsregeln nach EC3-7- Tabelle 3 Klassifizierung druckbeanspruchter Querschnittsteile (Fortsetzung) [N2, Tab 5.2, S. 47]

14 2 Bemessungsregeln nach EC3-8- Tabelle 4 Klassifizierung druckbeanspruchter Querschnittsteile (Fortsetzung) [N2, Tab 5.2, S. 48] Für die einzelnen Querschnittsteile sind die Klassifizierungen durchzuführen. Die höchste Querschnittsklasse der Teile ist gleichzeitig die Querschnittsklasse des gesamten Querschnitts.

15 2 Bemessungsregeln nach EC Bemessungsalgorithmen nach DIN EN Die Teilsicherheitsbeiwerte sind für die Nachweise nach DIN EN NA wie folgt festgelegt: γ M0 = 1,0 γ M1 = 1,1 γ M2 = 1,25 Im Hauptmenü des erstellten Programms können über die Menüleiste die einzelnen Nachweise ausgewählt werden Querschnittsnachweise (Einzelnachweise) In dem erstellten Programm sind über den Menüpunkt Einzelnachweise die Querschnittsnachweise auswählbar Zugbeanspruchungsnachweis Für den Nachweis der Zugbeanspruchung muss die Querschnittsklasse nicht beachtet werden. Der Bemessungswert der einwirkenden Zugkraft N Ed muss geringer sein, als der Bemessungswert der Zugbeanspruchbarkeit N t,rd. Für N t,rd ist der kleinere der folgenden Werte einzusetzen: Bemessungswert der plastischen Beanspruchbarkeit N pl,rd oder Bemessungswert der Zugbeanspruchbarkeit N u,rd.

16 2 Bemessungsregeln nach EC3-10- Zugbeanspruchungsnachweis Bemessungswert der Zugbeanspruchbarkeit:, =, =, = 0,9 Nachweis:, 1 Abbildung 1 Zugbeanspruchungsnachweis Druckbeanspruchungsnachweis Der Bemessungswert der einwirkenden Druckkraft N Ed muss geringer sein, als der Bemessungswert der Druckbeanspruchbarkeit N c,rd. Löcher für Verbindungsmittel müssen nicht berücksichtigt werden, wenn sie mit den Verbindungsmitteln gefüllt sind (Ausnahme: übergroße Löcher). In Abhängigkeit der Querschnittsklasse wird N c,rd wie folgt berechnet: Druckbeanspruchungsnachweis QK 1,2,3 QK 4!, = " # $ % &'!, = " ()) # $ % &' Nachweis:!, 1 Abbildung 2 Druckbeanspruchungsnachweis

17 2 Bemessungsregeln nach EC Nachweis einachsiger Biegebeanspruchung Für den Nachweis der Biegebeanspruchung ist es notwendig, den Bemessungswert der Biegebeanspruchbarkeit M c,rd zu berechnen und anschließend mit dem Bemessungswert der Biegemomente M Ed zu vergleichen. Der Bemessungswert der Biegebeanspruchbarkeit ist von der Querschnittsklasse abhängig und berechnet sich nach den folgenden Gleichungen. Nachweis einachsiger Biegebeanspruchung QK 1 und 2 QK 3 QK 4 +!, =+, =, +!, =+, =,,-. +!, =, ##,-. Nachweis: + +!, 1 Abbildung 3 Nachweis der Biegebeanspruchung Wie beim Druckbeanspruchungsnachweis müssen eventuelle Löcher im Druckbereich nicht beachtet werden, wenn sie mit Verbindungsmittel gefüllt sind. Um die Löcher im Zugbereich vernachlässigen zu können muss folgende Bedingung erfüllt sein: #, 0,9 #

18 2 Bemessungsregeln nach EC Nachweis der Querkraft ohne Torsion Um den Nachweis durchführen zu können, ist es notwendig, die wirksame Schubfläche A V zu berechnen. Damit kann der Bemessungswert der Querkraftbeanspruchbarkeit V c,rd bestimmt werden. Die folgende Tabelle zeigt, mit welchen Formeln A V berechnet werden kann. Querschnittsform Herstellung Lastrichtung A V I und H gewalzt zum Steg 223 # +3 # h U gewalzt zum Steg 223 # +3 # T gewalzt zum Steg 2 3 # # 2 I, H und Kasten geschweißt zum Steg 5h I, H, U und Kasten geschweißt zum Flansch 5h Rechteckhohlquerschnit gewalzt zur h te mit gleichförmiger Trägerhöhe 2+h Blechdicke zur 2 Trägerbreite Rundhohlquerschnitte alle alle 2+h 2 und Rohre mit gleichförmiger ; Blechdicke A Gesamtquerschnittsfläche t w Stegdicke (bei veränderlicher b Gesamtbreite Stegdicke sollte der kleinste Wert h Gesamthöhe eingesetzt werden) h 6 = 5h 2 3 # 8 Stegblechhöhe Für hier nicht ausgeführte r Ausrundungsradius Querschnittsformen sollte A v sinngemäß t f Flanschdicke bestimmt werden. Lastrichtung z: A vz = A v Lastrichtung y: A vy = A v Tabelle 5 Wirksame Schubflächen A v [L1, Tab 8.16] Wenn ein Nachweis auf der Basis der plastischen Querkraft nicht möglich ist, steht eine Alternative (elastische Bemessung) zur Verfügung.

19 2 Bemessungsregeln nach EC3-13- Querkraftnachweis plastische Bemessung elastische Bemessung Berechnung A v nach Tabelle 5 <!, = <, = = > 3 A B = < C, D E 3 2FG.B = <, D C E C 3 Nachweis < <!, 1 Nachweis B /J 3 K 1 Der Nachweis mit der elastischen Bemessungsvariante wird vom erstellten Programm nicht durchgeführt Querschnittsnachweise (kombinierte Nachweise) Über den Menüpunkt kombinierte Nachweise sind die Interaktionsnachweise anwählbar. Bei den kombinierten Nachweisen ist zu beachten, dass die Einzelnachweise erfüllt sein müssen. Diese Voraussetzung wird vom Programm nicht überprüft Interaktionsnachweis aus Querkraft und Torsion Bei gleichzeitiger Wirkung von Querkraft und Torsion ist der Bemessungswert der Querkraftbeanspruchbarkeit V pl,rd auf V pl,t,rd abzumindern. V pl,t,rd berechnet sich in Abhängigkeit vom Querschnitt wie folgt: Querschnitt V pl,t,rd (V pl,rd nach Abschnitt ) I- und H-Querschnitte B, <,L, = 1 M 1,25> 3 A/ U-Querschnitte Hohlprofile Q P <,L, = PM 1 P O B, 1,25> 3 A/ Q T B <,L, = P, 1 P 1,25> S O 3 A/ S R Tabelle 6 Berechnung Querkraftbeanspruchbarkeit mit Torsion <, B 6, > 3 A/ R S S <, T S <,

20 2 Bemessungsregeln nach EC3-14- Der Nachweis für die Interaktion aus Querkraft und Torsion lautet < <,L, Nachweis der Biegung und zugehöriger Quer- und Normalkraft Bevor der Nachweis geführt werden kann, muss überprüft werden, ob die Einzelnachweise der Normalkraft-, Querkraft- und Momentenbeanspruchung (N Ed N Rd, V Ed V Rd, M Ed M Rd ) erfüllt sind. Anschließend muss der Einfluss der Querkraft und Normalkraft auf die Biegebeanspruchung überprüft werden. Überschreitet die einwirkende Querkraft 50% der Querkraftbeanspruchbarkeit, muss die Momentenbeanspruchbarkeit reduziert werden. Auch bei N Ed 0,5N Rd muss die Momentenbeanspruchbarkeit reduziert werden. Auf den nachfolgenden Seiten werden die Algorithmen für den Nachweis der Biegung und zugehöriger Quer- und Normalkraft in Abhängigkeit vom gewählten Profil sowie der Querschnittsklasse aufgeführt Algorithmen für Querschnittsklasse 1 und 2 Die nachfolgenden Algorithmen zeigen die Vorgehensweise zur Nachweisführung in Abhängigkeit des gewählten Profils, sowie der Achse, um der die Biegung erfolgt.

21 2 Bemessungsregeln nach EC3-15- Nachweis der Biegung um y-achse für I-, H- und U-Querschnitte, = <,C, = " U > )$ V A % &' Berechnung A v nach Tabelle 5 +,, =,, < 0,5<,C, < >0,5<,C, Einfluss der Querkraft muss nicht berücksichtigt werden X =0 Abminderung der Streckgrenze 51 X8 3 X =Y 2< <,C, 1Z 0,25,? und 0,5h 63 6? \ ],C = "^,_ " ], =, 51 \ ],C X8 Bedingungen erfüllt Einfluss der Normalkraft muss nicht berücksichtigt werden =0 \ =0 Bedingungen nicht erfüllt Einfluss der Normalkraft muss berücksichtigt werden =, \ = 223 # 0,5 0,25,? und 0,5h X8? Einfluss der Normalkraft muss nicht berücksichtigt werden Einfluss der Normalkraft muss berücksichtigt werden = =0 \ =0 = = ], \ =51 X8 223 # \ 0,5 bc +`,, = a +,, bc,de +`],, = a + ],, +,, + ],, bc bc,de Nachweis: + +`,, Nachweis: + +`],, Abbildung 5 Nachweis der Biegung um y-achse für I- und U-Querschnitte (QK 1, 2)

22 2 Bemessungsregeln nach EC3-16- Nachweis der Biegung um die z-achse für I-, H- und U-Querschnitte, = <,, = " U > )$ V A % &' Berechnung A v nach Tabelle 5 +,C, = f gh,_ # $ % &' < 0,5<,, < >0,5<,, Einfluss der Querkraft muss nicht berücksichtigt werden X =0 Abminderung der Streckgrenze X =Y 2< 1Z <,C, + ],C, =+,C, 51 X8 i j j # $ % &'? \ ], = ], ], =, 51 \ ], X8 Bedingung erfüllt Einfluss der Normalkraft muss nicht berücksichtigt werden =0 \ =0 Bedingung nicht erfüllt Einfluss der Normalkraft muss berücksichtigt werden =, \ = 223 # 0,5 Bedingung erfüllt Einfluss der Normalkraft muss nicht berücksichtigt werden h 63 6? Bedingung nicht erfüllt Einfluss der Normalkraft muss berücksichtigt werden = =0 \ =0 = = ], \ = 223 # \ 0,5 +`,C, =k +,C,l1 m ce bce n oü7 >\ +,C, ü7 \ Nachweis: +`],C, =k + ],C,l1 m = \ 1 \ n oü7 = >\ + ],C, ü7 = \ Nachweis: + C, +`,C, + C, +`],C, Abbildung 6 Nachweis der Biegung um z-achse für I- und U-Querschnitte (QK 1, 2)

23 2 Bemessungsregeln nach EC3-17- Nachweis der Biegung um die y-achse für rechteckige Hohl- oder Kastenquerschnitte, = " # $ % &' <,C, = " U > )$ V A % &' Berechnung A v nach Tabelle 5 +,, = f gh,$ # $ % &' < 0,5<,C, < >0,5<,C, Querkraft muss nicht berücksichtigt werden Abminderung der Streckgrenze X =Y 2< <,C, 1Z = `pq `gh,rq Für Hohlquerschnitte \ 6 = 223 0,5 Für Kastenquerschnitte \ 6 = 223 # 0,5 \ ],C = "^,_ " ], =, 51 \ ],C X8 = = ], \ =51 X8 223 # \ 0,5 +`,, = a +,, +,, bc bc,de +`],, = a +,, +,, bc bc,de Nachweis + +`,, Nachweis + +`],, Abbildung 7 Nachweis der Biegung um y-achse für rechteckige Hohlquerschnitte (QK 1, 2)

24 2 Bemessungsregeln nach EC3-18- Nachweis der Biegung um die z-achse für rechteckige Hohl- oder Kastenquerschnitte, = = > <, = 3 A Berechnung A v nach Tabelle 5 +,C, =,,C < 0,5<,, < >0,5<,, Querkraft muss nicht Abminderung der Streckgrenze berücksichtigt werden X =Y 2< 1Z <,, + ],C, =+,C, 51 X8 = `pq `gh,rq Für Hohlquerschnitte \ # = 2h3 0,5 Für Kastenquerschnitte \ # = 2h3 6 0,5 \ ], = "^,$ " ], =, 51 \ ], X8 = = ], \ # =51 X8 2h3 \ # 0,5 +`,C, = a +,C, +,C, bc bc,de # +`],C, = k + ],C,s1 > Uce ) A tü7 bce = >\ ) + ],C, ü7 = \ Nachweis + +`,C, Nachweis + +`],, Abbildung 8 Nachweis der Biegung um z-achse für rechteckige Hohlquerschnitte (QK 1, 2)

25 2 Bemessungsregeln nach EC3-19- Nachweis der Biegung für Rundrohrquerschnitte, = <,C = " U > )$ V A % &' Berechnung A v nach Tabelle 5 +,, =, < 0,5<,C, < >0,5<,C, Querkraft muss nicht Abminderung der Streckgrenze berücksichtigt werden X =Y 2< 1Z <,, ],C = \ ],C =, ], =, 51 \ ],C X8 +`,, =+, 51 b,u 8 Nachweis + +`,, = `pq `^,rq \ =51 X8 2v3 \ 0,5 +`],, = k + 1,, 1 0,5\ +,, Nachweis + +`],, Abbildung 9 Nachweis der Biegung für Rundrohre (QK 1, 2)

26 2 Bemessungsregeln nach EC Algorithmen für Querschnittsklasse 3 Querschnitte, die in Querschnittsklasse 3 eingeordnet sind, können wegen örtlichen Beulens keine plastische Momententragfähigkeit entwickeln. Daher werden diese Nachweise mit elastischen Werten geführt. Nachweis der Biegung für doppeltsymmetrische I- und H-Querschnitte Biegung um y-achse Biegung um z-achse Nachweis für dir Randfaser w x, = ++,,, Nachweis für Faser Mitte Flansch < 0,5<,C, < >0,5<,C, X =0 X =Y 2< 1Z <,C, = > <,C, = 3 A Berechnung A v nach Tabelle 5 Berechnung A V,y nach Tabelle 5 Nachweis ] X + + C,,,C 51 X8 < 0,5<,C, < >0,5<,C, X =0 X =Y 2< 1Z <,C,,y =51 X8 Nachweis w x, = ++,h 3 # E 2,y Abbildung 10 Nachweis der Biegung für I-Querschnitte (QK 3)

27 2 Bemessungsregeln nach EC3-21- Nachweis der Biegung für alle anderen Querschnitte Biegung um y-achse Biegung um z-achse <,C = " U > )$ V A % &' Berechnung A v nach Tabelle 5 <, = " U > )$ V A % &' Berechnung A v nach Tabelle 5 < 0,5<,C, < >0,5<,C, < 0,5<,, < >0,5<,, X =0 X =Y 2< X =0 1Z X =Y 2< 1Z <,C, <,, + Nachweis +,,, 51 X8 1 + Nachweis + C,,,C 51 X8 1 Abbildung 11 Nachweis der Biegung für andere Querschnitte (QK 3) Algorithmen für Querschnittsklasse 4 Bei Querschnitten der Querschnittsklasse 4 tritt örtliches Beulen vor Erreichen der Streckgrenze auf. Daher müssen die Querschnittswerte reduziert werden und der Nachweis am effektiven Querschnitt durchgeführt werden. Für den Nachweis auf Biegung sind folgende effektiven Werte erforderlich: A eff wirksame Querschnittsfläche W eff,min wirksames Widerstandsmoment e N Verschiebung der Hauptachse der wirksamen Fläche A eff bezogen auf die Hauptachse der Bruttoquerschnittsfläche A

28 2 Bemessungsregeln nach EC3-22- Nachweis der Biegung für alle Querschnitte Biegung um y-achse Biegung um z-achse <,C = = > 3 A = > 3 A <, = < 0,5<,C, < > 0,5<,C, < 0,5<,, < > 0,5<,, X = 0 X = Y 2< X =0 1Z X =Y 2< 1Z <,C, <,, Nachweis: w = +, + z` + ##, ##, 51 X8 1 Nachweis: w = + C, + z`c + ##, ##,C 51 X8 1 Abbildung 12 Nachweis der Biegung für alle Querschnitte (QK 4) Nachweis zweiachsiger Biegung Für den Nachweis von Profilen mit zweiachsiger Biegebelastung müssen zunächst die Bemessungswerte der Momententragfähigkeit M N,y,Rd und M N,z,Rd mit Hilfe der Algorithmen nach Abschnitt ermittelt werden. Anschließend kann mit folgenden Formeln der Nachweis geführt werden. Für die Querschnittsklassen 1 und 2 gilt: Querschnitt Konstanten α β I-Querschnitte Runde Hohlquerschnitte 2 2 Rechteckige Hohlquerschnitte 1,66 1 1,13 6 1,66 1 1,13 6 alle anderen Querschnitte 1 1 Tabelle 7 Bestimmung der Konstanten Alpha und Beta mit =,

29 2 Bemessungsregeln nach EC3-23- Nachweis der zweiachsigen Biegung für alle Querschnitte Bestimmung M N,y,Rd und M N,z,Rd bzw. M NV,y,Rd und M NV,z,Rd nach Abschnitt Bestimmung α und β nach Tabelle 7 s +, +`,, t Nachweis: +s + C, +`,C, t } 1 Abbildung 13 Nachweis zweiachsiger Biegung für alle Querschnitte (QK 1, 2)

30 2 Bemessungsregeln nach EC3-24- Für Querschnittsklasse 3 gilt Nachweis der zweiachsigen Biegung für alle Querschnitte <,, = = > 3 A = > <,C, = 3 A Berechnung A v nach Tabelle 5 Bestimmung X < 0,5<,C, < >0,5<,C, X =0 X =Y 2< 1Z <,C, Bestimmung X C < 0,5<,, < >0,5<,, X C =0 X C =Y 2< 1Z <,, +, Nachweis: +,, J1 X K + + C,,,C 51 X C 8 1 Abbildung 14 Nachweis zweischsiger Biegung für alle Querschnitte (QK 3)

31 2 Bemessungsregeln nach EC3-25- Für Querschnittsklasse 4 gilt: Nachweis der zweiachsigen Biegung für alle Querschnitte <,, = = > 3 A = > <,C, = 3 A Berechnung A v nach Tabelle 5 Bestimmung X < 0,5<,C, < >0,5<,C, X =0 X =Y 2< 1Z <,C, Bestimmung X C < 0,5<,, < >0,5<,, X C =0 X C =Y 2< 1Z <,, Nachweis: +, + z` + C, + z`c + ##, ##, J1 X K +, ##,C 51 X C 8 1 Abbildung 15 Nachweis zweiachsiger Biegung für alle Querschnitte (QK 4)

32 2 Bemessungsregeln nach EC Stabilitätsnachweise Schlanke Tragwerke des Stahlbaus können durch Stabilitätsversagen ihre Standsicherheit verlieren, lange bevor die Fließspannung in den Bauteilen erreicht wird. Folgende Arten von Stabilitätsversagen werden unterschieden: - Knicken: seitliches Ausweichen druckbelasteter Stäbe oder Stabwerke - Drillknicken: Torsionsverformung druckbelasteter Stäbe - Biegedrillknicken: seitliches Ausweichen biegebelasteter Stäbe oder Stabwerke - Beulen: flächiges Ausweichen von dünnen Platten oder Schalen unter Druckbelastung [L1, S. 8.23] Der Nachweis gegen Stabilitätsversagen kann auf unterschiedlichen Wegen geführt werden, z.b. der Spannungsnachweis nach Theorie II. Ordnung. In den folgenden Abschnitten wird das Ersatzstabverfahren gezeigt, bei dem ein Einzelstab bzw. ein gedanklich aus einem Stabwerk getrennter Stab mit den realen Randbedingungen nachgewiesen wird Nachweis gegen Biegeknicken Für planmäßig zentrisch belastete Druckstäbe sind folgende Gleichungen für den Nachweis erforderlich.

33 2 Bemessungsregeln nach EC3-27- Nachweis gegen Biegeknicken planmäßig druckbeanspruchter Querschnitte ~!y = Knicklängenbeiwert β nach Abbildung 1 Knicken um y- Achse Knicken um z-achse!y, = ; E ~!y!y,c = ƒ _ ƒ Bestimmung des Schlankheitsgrades ˆ =Š!y Bestimmung des Schlankheitsgrades ˆC = "# $ ` ˆ 0,2 ˆ >0,2 ˆC 0,2 ˆC >0,2 χ y = 1,0 mit Œ = 1 + ˆ Œ 1,0 χ z = 1,0 mit Œ C = 1 C + C ˆC Œ C 1,0 = 1 2 Ž1+ 0,2K+ˆ Jˆ Knicklinie und Beiwert α nach Tabelle 8 und 9 C = 1 2 Ž1+ CJˆC 0,2K+ˆC Knicklinie und Beiwert α nach Tabelle 8 und 9, = Œ b, = Œ C b Nachweis, 1 Abbildung 16 Nachweis Biegeknicken

34 2 Bemessungsregeln nach EC3-28- Alternativ kann der Schlankheitsgrad mit Hilfe von Abbildung 18 ermittelt werden. Für Querschnittsklasse 4 gilt: A = A eff. Abbildung 17 Knicklängenbeiwerte einfacher Stäbe [L1, S. 8.24] Knicklinie a 0 a b c d Imperfektionswert α 0,13 0,21 0,34 0,49 0,76 Tabelle 8 Imperfektionsbeiwerte [L1, Tab. 8.24b, S. 8.24] Abbildung 18 Knicklinien [N2, Abb. 6.4, S. 65]

35 2 Bemessungsregeln nach EC3-29- Tabelle 9 Auswahl der Knicklinie [N2, Tab. 6.2, S. 64]

36 2 Bemessungsregeln nach EC Nachweis gegen Biegedrillknicken Bei biegebeanspruchten Stäben kann Stabilitätsversagen auftreten, wobei der Druckgurt des Trägers ausknickt und zusätzlich zu einer Verdrillung des Trägers eine seitliche Verformung stattfindet. Dieses Stabilitätsversagen wird als Biegedrillknicken [ ] bezeichnet. In folgenden Fällen braucht kein BDK-Nachweis geführt werden: - wenn der Druckgurt seitlich gehalten ist (z.b. bei Verbundträgern). - wenn Biegung um die schwache Achse vorliegt. - bei Stäben aus Hohlprofilen. - falls gilt: ˆ L <0,4 oder + +!y 0,16. Der EC 3 bietet drei Alternativen zum Nachweis der Sicherheit gegen Biegedrillknicken: - Nachweis nach dem Ersatzstabverfahren [DIN EN / ]. - vereinfachter Nachweis des Druckgurtes auf Knicken [DIN EN / ]. - Nachweis einer ausreichenden seitlichen Stützung [DIN EN /BB.2.2]. [L1, S. 8.33] In diesem Abschnitt wird nur das Verfahren nach dem Ersatzstabverfahren aufgezeigt. Folgende Gleichungen sind nach diesem Verfahren anzuwenden: Querschnittsklasse Widerstandsmoment W y W pl,y W pl,y W el,y W eff,y Tabelle 10 Widerstandsmoment

37 2 Bemessungsregeln nach EC3-31- Nachweis gegen Biegedrillknicken biegebeanspruchter Querschnitte ˆ L =Š, +!y Bestimmung M cr nach Abschnitt Œ L = 1 L + L ˆ L Œ L 1,0 zv h k Œ L 1 ˆ L L =0,5 1+ L Jˆ L ˆ L, K+ˆ L š Bestimmung α LT nach Tabelle 11 und 12 ˆ L, =0,4 =0,75 Abminderung von Œ L um Momentenverteilung zwischen den seitlichen Lagern zu berücksichtigen Œ L,-œ = Œ Œ L,-œ 1,0 L zv h k Œ L,-œ 1 ˆ L =1 0,551! 8Ž1 2,0Jˆ L 0,8K zv h 1 Bestimmung von k c nach Tabelle 13 +, =Œ L,-œ, b Nachweis: + +, 1 Abbildung 19 Nachweis BDK

38 2 Bemessungsregeln nach EC3-32- Knicklinie a b c d Imperfektionsbeiwert α LT 0,21 0,34 0,49 0,76 Tabelle 11 empfohlene Imperfektionsbeiwerte [N2, Tab. 6.3, S. 68] Querschnitt Grenzen Biegedrillknicklinien gewalztes I-Profil h 2 2 h 2 > 2 b c geschweißtes I-Profil h 2 2 h 2 > 2 c d andere Querschnitte - d Tabelle 12 empfohlene Biegedrillknicklinien [N2, Tab. 6.4 und 6.5, S. 68f] Tabelle 13 empfohlene Korrekturbeiwerte [N2, Tab. 6.6, S. 69]

39 2 Bemessungsregeln nach EC3-33- Für doppeltsymmetrische I-Profile lässt sich das ideale Biegedrillknickmoment M cr wie folgt berechnen: +!y = Ÿ!y,C s J +0,25 F K+0,5 F t mit Ÿ nach Tabelle 14!y,C = ; E C = E 6+0,039 E L E C z p : Abstand vom Angriffspunkt der Belastung zum Schwerpunkt (bei rückdrehender Wirkung der Belastung positiv) Tabelle 14 Momentenbeiwert [L1, Tab. 8.34a, S. 8.34]

40 2 Bemessungsregeln nach EC Nachweis für auf Druck und Biegung beanspruchte Bauteile Der Stabilitätsnachweis eines Stabes, der auf Druck und Biegung belastet ist, wird mit folgenden Gleichungen durchgeführt: Stabilitätsnachweis auf Druck und Biegung beanspruchter Bauteile Bestimmung der Interaktionsbeiwerte k yy, k yz, k zy und k zz nach Tabelle 15, 16 und 17 Bestimmung des Abminderungsbeiwertes für BDK Œ L nach Bestimmung der Abminderungsbeiwerte für Biegeknicken Œ und Œ C nach Bestimmung der Querschnittswerte und Zusatzmomente nach Tabelle 18 Nachweis: Œ b + +, +Δ+, Œ L +, b und + C + C, +Δ+ C, + C, b 1 Œ C b + C +, +Δ+, Œ L +, b + CC + C, +Δ+ C, + C, b 1 Abbildung 20 Stabilität Druck und Biegung

41 2 Bemessungsregeln nach EC3-35- Tabelle 15 Interaktionsbeiwerte für verdrehsteife Bauteile [N2, Tab. B.1, S. 88] Tabelle 16 Interaktionsbeiwerte für verdrehweiche Stäbe [N2, Tab. B.2, S. 89]

42 2 Bemessungsregeln nach EC3-36- Tabelle 17 Äquivalente Momentenbeiwerte [N2, Tab. B.3, S. 89] QK 1 QK 2 QK 3 QK 4 N Rk ## M y,rk,,,,,,, ##, M z,rk,,c,,c,,c, ##,C M y,ed z`, M z,ed z`,c Tabelle 18 Werte für N Rk, M i,rk und M i,ed [L1, Tab. 8.39a, S. 8.39]

43 3 Einführung in die Programmierung Einführung in die Programmierung 3.1 Allgemeines zum Projekt Das hier beschriebene Projekt wurde mit der Programmiersprache C++ entwickelt. C++ ist eine durch die Internationale Organisation für Normung (ISO) genormte Programmiersprache. Die Entwickler hatten das Ziel, eine möglichst effiziente Programmiersprache zu entwickeln. C++ ist eine Weiterentwicklung von C. Mit C++ wurde C um objektorientierte Konzepte erweitert. Da C++ nur aus sehr wenigen Schlüsselwörtern besteht, erhält sie ihre eigentliche Funktionalität durch die C++-Standardbibliothek (standardisierte Bibliothek, stellt unter anderen Zeichenketten und einfache Funktionen zur Verfügung) sowie zusätzlicher Bibliotheken und Frameworks. Programme können nicht von selbst ausgeführt werden, denn sie benötigen eine Laufzeitumgebung. Eine Laufzeitumgebung ist ein Programm, das zwischen dem erstellten Programm und dem Betriebssystem vermittelt..net ist eine entwickelte Software-Plattform, die u.a. aus einer Laufzeitumgebung (Common Language Runtime, kurz: CLR) sowie einer Sammlung von Klassenbibliotheken besteht. Anwendungen, die mit dem.net sind somit unabhängig vom Betriebssystem und können auf jedem Betriebssystem angewendet werden, auf dem das.net Framework installiert ist. Ein weiterer wichtiger Aspekt zur Entscheidung zum.net ist, dass mit deren Bibliotheken Anwendungen mit grafischer Benutzeroberfläche erstellt werden können. GUI-Anwendungen (Graphical User Interface-Anwendungen) machen es den Benutzern einfacher, das Program anzuwenden, da es mit Schaltflächen in Fenstern bedient werden kann. 3.2 Programmerstellung Ein Programm ist eine Folge von Anweisungen, die nach den Regeln einer bestimmten Programmiersprache geschrieben sind. Für eine Aufgabe wird vom Programmierer ein Algorithmus erstellt. Dafür werden häufig Struktogramme verwendet. Anschließend wird der Quelltext in einer Programmiersprache geschrieben und von einem Compiler in den Maschinencode übersetzt. Dieser ist notwendig, da dem Prozessor eines Computers nur einen begrenzten Satz elementarer Befehle den Maschinencode zur Verfügung steht. Ein in Maschinencode geschriebenes (oder ein in Maschinencode übersetztes) Programm kann vom Prozessor direkt ausgeführt werden.

44 3 Einführung in die Programmierung Das Struktogramm 1972/73 entwickelten Nassi und Shneiderman einen Diagrammtyp, der zur Darstellung von Programmstrukturen dient. Das nach ihnen benannte Nassi-Shneiderman-Diagramm wird daher auch Struktogramm genannt und ist in der DIN (Letzte Ausgabe: November 1985) genormt. Die Aussagen eines Programmablaufplans erfolgen mit Hilfe von Sinnbildern und erläuternden Texten in den Sinnbildern. Der Programmablauf wird durch die Auswahl der Sinnbilder sowie deren Schachtelung dargestellt. Die Texte beschreiben inhaltlich die Bedingungen und die Verarbeitungen. Die äußere Form eines Sinnbildes ist immer ein Rechteck; die Unterteilung erfolgt nur durch gerade Linien. [N4, S. 1] Mittlerweile existieren viele frei verfügbare Editoren, mit denen das Erstellen von Struktogrammen vereinfacht wird. In diesem Bachelorprojekt wird [P5] verwendet. Häufig verwendete Sinnbilder in einem Struktogramm sind Folge: Eine einfache Abfolge von mehrehren Anweisungen Abbildung 21 einfache Anweisungen Wiederholung: Wiederholung von Anweisungen mit vorausgehender Überprüfung der Bedingung Abbildung 22 kopfgesteuerte Schleife Wiederholung: Wiederholung von Anweisungen mit nachfolgender Überprüfung der Bedingung Abbildung 23 fußgesteuerte Schleife

45 3 Einführung in die Programmierung -39- Alternative: Ist die Bedingung erfüllt, wird Anweisung 1 und 2 ausgeführt. Wenn sie nicht erfüllt ist, wird Anweisung 3 und 4 ausgeführt. Ein Zweig kann auch ohne Anweisung geschrieben werden. Abbildung 24 einfache Alternative mehrfache Alternative: Eine Bedingung mit mehreren alternativen Fällen führt zu unterschiedlichen Anweisungen. Abbildung 25 mehrfache Alternative

46 3 Einführung in die Programmierung -40- Das folgende Bild zeigt ein Beispiel eines Struktogrammes, dass in Anlehnung an Bild A.3, DIN 66001, Ausgabe Dezember 1983 erstellt wurde. Abbildung 26 Beispiel Struktogramm [N4, Abb. A.1, S. 4]

47 3 Einführung in die Programmierung Erstellung des Quelltextes Das Hauptprogramm Das Grundgerüst des Hauptprogramms besitzt die nachfolgende Struktur. #include <iostream> using namespace std; int main() { //Anweisungen return 0; } Anweisungen, die in Programmen immer wieder vorkommen, müssten theoretisch immer wieder neu geschrieben werden, z.b. das Öffnen von Dateien oder Ausgeben von Daten auf dem Bildschirm. Um dies zu vermeiden sind wichtige Funktionen in Header-Dateien zusammengefasst. Diese können in beliebigen Anwendungen mit dem Befehl #include< > geladen werden. Die nachfolgende Tabelle zeigt einige Headerdateien der C++- Standardbibliothek: Headerdatei Funktionalität <iostream> Ein- und Ausgabe <String> Die Klasse String zur Programmierung mit Zeichenfolgen (»Strings«genannt) <cstdlib> Von C übernommene Headerdatei mit verschiedenen nützlichen Funktionen <cmath> Von C übernommene Headerdatei mit mathematischen Funktionen <ctime> Von C übernommene Headerdatei mit Funktionen zur Verarbeitung von Zeit- und Datumsangaben Tabelle 19 Wichtige Headerdateien der C++-Standardbibliothek [L2, Tab. 1.1, S. 37] Einige Headerdateien (wie z.b. <iostream>) sind in den Namensraum std eingebunden. Daher muss die Anweisung using namespace std; eingefügt werden. Namensräume (namespace) wurden eingerichtet um den Quelltext besser organisieren zu können. Wenn in einem Programm und in einer eingebundenen Headerdatei ein Element mit dem Namen X definiert sind, würde beim Kompilieren ein Namenskonflikt auftreten. Mit der Einführung des Konzeptes der Namensräume kann dieser Konflikt vermieden werden, wenn eines der beiden Elemente einen anderen Namensraum erhält. Namensräume werden mit dem Schlüsselwort namespace definiert. Die folgende Tabelle zeigt einige.net-namespaces.

48 3 Einführung in die Programmierung -42-.NET-Namespace Funktionalität System Grundlegende Funktionalität (Datentypen, Datenkonvertierung, mathematische Funktionen, Ausnahmen etc.) System::Collections Container-Klassen zur Verwaltung von größeren Datensammlungen in einem Programm System::IO Klassen für die Ein- und Ausgabe (inklusive Dateien) System::Windows::Forms Klassen für die GUI-Programmierung System::Drawing Klassen für die Grafik-Programmierung System::Data Klassen für die Datenbank-Programmierung System::XML Klassen für die XML-Programmierung Tabelle 20 Wichtige.NET-Namespaces [L2, Tab. 1.2, S. 40] Die Zeile int main() bedeutet den Aufruf der Hauptfunktion. Eine main-funktion muss in jedem Projekt vorhanden sein, denn dies ist die Funktion mit der die Ausführung des Programmes beginnt. In den geschweiften Klammern werden die Anweisungen geschrieben, die das Program ausführen soll. Jede Anweisung muss mit einem Semikolon abgeschlossen werden. Wird die main-funktion mit int main() aufgerufen, so erwartet der Compiler einen ganzzahligen Rückgabewert. Dieser wird mit der Anweisung return 0; zurück gegeben. Einige Compiler lassen auch void main() als Aufruf der Hauptfunktion. Damit wird kein Rückgabewert erwartet. In den Quelltext lassen sich einige Kommentare einfügen, die der Compiler als solche erkennt und nicht als Anweisungen im Quelltext beachten muss. Kommentare lassen sich auf zwei verschiedenen Wegen einfügen. Der Einzeilige Kommentar wird mit // ausgelöst. Alles, was in einer Zeile rechts neben // steht, wird als Kommentar angesehen. Der mehrzeilige Kommentar wird mit /* eingeleitet und endet mit */. Der gesamte Text zwischen diesen Zeichen wird als Kommentar angesehen Variablen Damit in Programmen Daten verarbeitet werden können, müsse diese Werte in Variablen gespeichert werden. Um eine Variable korrekt zu deklarieren, muss zunächst der Datentyp und danach ein Name festgelegt werden. Beispiele für die Deklaration von Variablen sind: int x; double a,b; short KleineZahl = 5; Die Variable x wurde vom Typ Integer deklariert. Mit dem Semikolon wird die jeweilige Programmzeile abgeschlossen. Wenn mehrere Variable mit dem gleichen Typ deklariert werden sollen, kann die Deklaration auch, wie im Beispiel, in einer Zeile und mit einem Komma getrennt geschrieben werden. Die Variablen a und b wurden somit vom Typ double deklariert. Innerhalb der Deklaration ist es auch möglich, eine Variable mit einem Wert zu belegen. Somit hat die Variable KleineZahl vom Typ short den Wert 5.

49 3 Einführung in die Programmierung -43- Die Nachfolgende Tabelle zeigt typische Variablentypen und deren Beschreibungen. System::Single System::Double Datentyp Beschreibung Werte.NET-Typ bool boolscher Wert true, false System::Boolean (wahr, falsch) char Zeichen, a, 2 System::Byte Buchstabe wchar_t Zeichen, a, 2 System::Char Buchstabe \u00a3 (Unicode für das Zeichen ) short ganze Zahl bis System::Int16 int ganze Zahl bis System::Int long ganze Zahl - System::Int bis Auf anderen Systemen, bei anderen Compilern identisch zu int. float Gleitkommazahl ca. 1,5 x bis 3,4 x double Gleitkommazahl ca. 1,7 x bis 1,7 x Tabelle 21 Die wichtigsten elementaren Datentypen [L2, Tab. 3.1, S. 96]

50 3 Einführung in die Programmierung Operatoren Neben den üblichen mathematischen Operatoren gibt es in C++ noch weitere Operatoren. Oft verwendete Operatoren sind: Operator Beschreibung ++ Inkrement, -- Dekrement! logisches NICHT Beispiel Erhöht oder erniedrigt den Wert einer Variablen um 1 Negiert den Wahrheitswert einer Aussage (beispielsweise eines Vergleichs). Wird meist in Kontrollstrukturen verwendet. * Multiplikation Multiplikation / Division Division % Modulo Liefert den Rest einer ganzzahligen Division: 7 % 3 liefert z.b <= <; > >= ==!= Subtraktion Addition Vergleich Vergleich (gleich / ungleich) Subtraktion Addition Zum Vergleich zweier Werte. Die Operatoren liefern true oder false zurück. Zum Vergleich auf Gleichheit oder Ungleichheit. Die Operatoren liefern true oder false zurück. && logisches UND Verknüpft zwei boolsche Aussagen. Liefert true, wenn beide Aussagen true sind. if ((x<1)&&(y>1)) logisches ODER Verknüpft zwei boolesche Aussagen. Liefert true, wenn eine der beiden Aussagen true ist. if ((x<1) (y>1)) Tabelle 22 Ausgesuchte Operatoren [L2, Tab. 3.7, S. 112] Die Operatoren in dieser Tabelle sind nach Priorität geordnet Kontrollstrukturen Mit Kontrollstrukturen kann der Programmablauf innerhalb einer Funktion/Methode gesteuert werden, z.b. wenn eine bestimmte Anweisung wiederholt werden soll, oder beim Testen von Bedingungen. Die nachfolgenden Abschnitte zeigen die grundlegenden Kontrollstrukturen Bedingungen: if-else Die if-funktion überprüft eine Bedingung. Wenn die Bedingung wahr ist, werden weitere Anweisungen ausgeführt. Wenn die Bedingung nicht erfüllt ist, kann optional ein else-zweig eingefügt werden und in diesen andere Anweisungen geschrieben werden. Folgende Konstruktion wird verwendet.

51 3 Einführung in die Programmierung -45- if(bedingung) { //Bedingung ist wahr Anweisung1; } else { //Bedingung ist falsch Anweisung2; } Mehrfachbedingungen: switch Eine switch-anweisung überprüft eine Bedingung, bei der es mehrere Möglichkeiten geben kann. Für jede einzelne Möglichkeit können mehrere Anweisungen geschrieben werden. Folgende Konstruktion wird verwendet: switch (Bedingung mit mehreren Optionen) { case Option1: Anweisung1; break; case Option2: Anweisung2; break; case default: Anweisung3; break; } Einfache switch-anweisungen könnten auch als if-funktionen geschrieben werden. Dies wird jedoch bei mehreren Optionen schnell unübersichtlich. Jeder case-zweig wird mit dem Befehl break abgeschlossen. Wenn dieser Befehl fehlt, werden die anderen case-zweige auch ausgeführt (bis ein break kommt). Der letzte Anweisungsblock ist nicht mit dem Schlüsselwort case, sondern default aufgerufen. Anweisungen im default-zweig werden nur dann aufgerufen werden, wenn keine andere Option in den vorhergehenden case-zweigen zutrifft.

52 3 Einführung in die Programmierung Schleifen Schleifen eignen sich, wenn die gleiche Anweisung mehrfach ausgeführt werden soll. Es wird zwischen kopf- und fußgesteuerten Schleifen unterschieden. Bei kopfgesteuerten Schleifen wird die Bedingung zunächst überprüft und die Anweisungen bei erfüllter Bedingung ausgeführt. Wenn die Bedingung nicht erfüllt ist, kann es dazu kommen, dass die Anweisungen in der Schleife nicht ausgeführt werden. Kopfgesteuerte Schleifen sind foroder while-schleifen. Bei fußgesteuerten Schleifen werden die Anweisungen in der Schleife einmal ausgeführt. Danach wird eine Bedingung überprüft. Ist diese erfüllt, wird die Schleife ein weiteres Mal durchgelaufen. Ein Beispiel für eine fußgesteuerte Schleife ist die do-while- Schleife. Die Nachfolgenden Beispiele sollen die verschiedenen Schleifenarten verdeutlichen. Die 3 Beispiele sind aus [L2, S. 161f] übernommen. Die for-schleife int i; for (i = 1; i<= 100; i++) { Console::WriteLine( i hat den Wert +i+ \n ); } Hinter dem Schlüsselwort for stehen in Klammern 3 verschiedene Informationen, die mit einem Semikolon getrennt sind: i = 1: Die Variable i wird auf den Wert i = 1 gesetzt (Startbedingung). i<=100: Die Schleife wird so oft durchlaufen, bis der i größer als 100 ist (Endbedingung). i++: Nach jedem Schleifendurchlauf wird i um 1 erhöht (Anweisung nach einem Durchlauf der Schleife). Die Anweisung in der Schleife bedeutet, dass eine Zeile geschrieben wird. In der Klammer wird deutlich, was geschrieben werden soll: Die Zeichenkette i hat den Wert, dann der aktuelle Wert von i und schließlich die nächste Zeichenkette \n. Die Zeichenkette \n wird mit einem \ eingeleitet, das heißt sie besitzt eine gesonderte Funktion (\n ist mit der Enter-Taste gleichzusetzen). Hier wird also nicht \n in die Zeile geschrieben, sondern es wird ein Zeilenvorschub erzeugt. In der Konsole auf dem Monitor werden somit folgende Zeilen stehen: i hat den Wert 1 i hat den Wert 2 i hat den Wert 100.

53 3 Einführung in die Programmierung -47- Die gleiche Funktion besitzt folgende while-schleife int i = 1; while (1<= 100) { Console::WriteLine( i hat den Wert + i + \n ); i++; } Die do-while-schleife für dieses Beispiel lautet int i = 1; do { Console::WriteLine( I hat den Wert + I + \n ); i++; } while (i<=100); Zu beachten ist, dass die do-while Schleife mit einem Semikolon abzuschließen ist. 3.5 Das Kompilieren eines Programms Sobald der Quelltext des Programms fertig geschrieben ist, wird ein Compiler benötigt. Ein Compiler ist ein spezielles Programm, der den geschriebenen Quelltext aus einer Programmiersprache (in diesem Fall C++) in eine maschinell ausführbare Maschinensprache überführt. Dieser Vorgang wird auch Kompilieren genannt. Die Kompilierung erfolgt meist in 3 Phasen: 1. Lexikalische Analyse: Durchsuchen des Quelltextes und Zerteilen in Tokens verschiedener Klassen wie: Schlüsselwörter, Operatoren, Bezeichner, Zahlen und Formulierungen. Dieser Teil des Compilers wird auch als Scanner oder Lexer bezeichnet. 2. Syntaktische Analyse und 3. Semantische Analyse: Validierung der Befehle, der Variablen, der Datentypen und der korrekten Beziehung der Befehle untereinander. Codegenerierung: Auswertung der Datenstrukturen aus Phase 2 und Erzeugung des korrekten Maschinencodes (Bytecode, Assemblercode). [I1] Microsoft Visual Studio 2010, das Programm mit der die Anwendung dieses Projekts erstellt wurde, besitzt interne Compiler. Es müssen keine weiteren Programme herangezogen werden, um aus dem geschriebenen Quellcode ein ausführbares Programm zu erstellen.

54 4 Vorstellung der Programmierumgebung Vorstellung der Programmierumgebung In diesem Kapitel wird eine Einführung in Microsoft Visual Studio 2010 gegeben. Dabei wird gezeigt, wie ein Projekt erstellt wird und welche Möglichkeiten die Programmierumgebung bietet. Es werden Einblicke in die Steuerelemente sowie deren Eigenschaften gezeigt. 4.1 Syntax-Hervorhebung Der Quelltext wird in Visual Studio in unterschiedlichen Farben angezeigt. Dies dient als Erleichterung für den Programmierer. So kann die Orientierung besser gewahrt bleiben und Fehler können besser aufgespürt werden. Die verschiedenen Farben haben folgende Bedeutung: - grün: Kommentare - blau: Schlüsselwörter - schwarz: Sonstiges Dem Verfasser dieser Arbeit stand ein weiteres Tool (Visual Assist X) zur Verfügung. Dies soll die Arbeit weiter erleichtern. Des Weiteren wird durch dieses Tool Quelltext, der in Anführungszeichen steht oder Namen von Prozeduren rot angezeigt.

55 4 Vorstellung der Programmierumgebung Erstellen eines neuen Projektes Abbildung 27 MS Visual Studio 2010 Startseite [P1, Startseite] Abbildung zeigt Die Startseite von Microsoft Visual Studio 2010 Professional. Auf der linken Seite ist der Projektmappen-Explorer zu finden. Dieser zeigt das aktuell geöffnete Projekt an. Darin sind die einzelnen Dateien des Projekts aufgelistet. Über den Menüpunkt Datei- >Neues Projekt (oder mit dem Tastenkürzel Strg+N) kann ein neues Projekt geöffnet werden.

56 4 Vorstellung der Programmierumgebung -50- Abbildung 28 Erstellen eines neuen Programms [P1, neues Projekt anlegen] Im linken Teil des Bildschirmausschnittes werden installierte Vorlagen angezeigt. Mit Visual Studio ist es demnach auch möglich Projekte in anderen Programmiersprachen zu verfassen. Eine Anwendung mit grafischer Oberfläche ist über das Menü Visual C++ -> CLR -> Windows Forms-Anwendung erstellbar. Im unteren Teil des Menüs werden ein Name und der Speicherort festgelegt. Nach erfolgreicher Erstellung des Programms erscheinen im Projektmappen-Explorer alle Dateien des Projekts. Auf der rechten Seite ist ein Formular geöffnet. Dieses trägt den Titel Form1 und ist im Entwurfsmodus geöffnet. In dieser Ansicht können Steuerelemente im Formular erstellt werden. Diese Ansicht zeigt auch das Aussehen an. Formulare können in der Code-Ansicht geöffnet werden. In dieser Ansicht wird der Quelltext eines Formulars angezeigt. Zur Erklärung der einzelnen Elemente wird ein neues Projekt mit dem Namen Projekt_Darstellung erzeugt.

57 4 Vorstellung der Programmierumgebung -51- Abbildung 29 Projektmappen-Explorer und Formular 1 [P1, Formular 1] 4.3 Hauptdatei und Formulare Hauptdatei Die Hauptdatei eines Projektes trägt den Namen des Projektes und hat die Dateiendung.cpp. Der Quelltext der Hauptdatei ist wie üblich in einem C++ Projekt eher kurz gehalten. Der Quelltext lautet: // Projekt_Darstellung.cpp: Hauptprojektdatei. #include "stdafx.h" #include "Form1.h" using namespace Projekt_Darstellung; [STAThreadAttribute] int main(array<system::string ^> ^args) { // Aktivieren visueller Effekte von Windows XP, bevor Steuerelemente erstellt werden Application::EnableVisualStyles(); Application::SetCompatibleTextRenderingDefault(false); } // Hauptfenster erstellen und ausführen Application::Run(gcnew Form1()); return 0;

58 4 Vorstellung der Programmierumgebung -52- Zuerst werden Headerdateien eingebunden. In der Datei Form1.h wird die grafische Oberfläche des Programms definiert. Der Funktionsaufruf int main startet das Programm. Die Nachfolgende Tabelle zeigt die Bedeutung der Methoden der Klasse Application, die in der Hauptdatei aufgerufen werden: Methode Beschreibung EnableVisualStyles() Die Anwendung wird im Design des aktuellen Systems dargestellt. Wenn diese Funktion fehlt (oder auskommentiert ist) wird die Anwendung im klassischen Windows- Design dargestellt SetCompatibleTextRenderingDefault() Aktivierung fortgeschrittener Grafikmöglichkeiten Run(gcnew Form1()) Form1 wird zum Hauptfenster der Anwendung und wird gestartet Tabelle 23 Methoden der Hauptdatei Formulare Das erste Formular ist in der Datei Form1.h definiert. Im Entwurfsmodus können mit Hilfe des Windows Forms-Designer Menüpunkte, Steuerelemente und ähnliches mit der Maus gesetzt werden. Der Windows Forms-Designer übernimmt dabei das Schreiben des Quelltextes. Im Windows Form Designer generated code werden für das Formular bereits einige Eigenschaften festgelegt. Im Entwurfsmodus können auf der rechten Seite die Eigenschaften des Formulars (und auch von jedem hinzugefügten Steuerelement) verändert werden. Das Eigenschaftsfenster kann auch mit dem Tastenkürzel F4 aufgerufen werden. Die folgende Tabelle zeigt eine Auswahl von Eigenschaften sowie deren Erklärungen für ein Fenster (Formular).

59 4 Vorstellung der Programmierumgebung -53- Eigenschaft Erklärung AutoScaleMode Bestimmt, wie die Größe des Formulars oder Steuerelements angepasst wird, wenn sich die Bildschirmauflösung oder Schriftarten ändern. AutoScroll Gibt an, ob Schiebeleisten automatisch angezeigt werden, wenn der Inhalt der Steuerelemente größer ist als der sichtbare Bereich. AutoSize Gibt an, ob ein Steuerelement seine Größe automatisch an seinen Inhalt anpasst. BackColor Die Hintergrundfarbe der Komponente. BackgroundImage Das Hintergrundbild für das Steuerelement. Cursor Der angezeigte Cursor, wenn der Zeiger über das Steuerelement bewegt wird. Enabled Zeigt an, ob das Steuerelement aktiviert ist. Font Die Schriftart des Textes im Steuerelement. ForeColor Die Vordergrundfarbe dieser Komponente für das Anzeigen von Text. FormBorderStyle Gibt die Darstellung und das Verhalten des Rahmens und der Titelleiste des Formulars an. Icon Zeigt das Symbol für ein Formular an. Dies wird im Systemmenüfeld des Formulars angezeigt und wenn das Formular minimiert ist. Location Die Koordinaten der oberen linken Ecke des Steuerelements relativ zu der oberen linken Ecke des Containers. Locked Die Locked-Eigenschaft bestimmt, ob das Steuerelement verschoben oder seine Größe geändert werden kann. Padding Gibt die Abstände im Inneren eines Steuerelements an. Size Die Größe des Steuerelements in Pixeln. StartPosition Bestimmt die Position des Formulars, an der es zuerst angezeigt wird. Text Der dem Steuerelement zugeordnete Text. WindowState Bestimmt den ersten visuellen Zustand des Formulars. Tabelle 24 Eigenschaften von Formularen [P1, Erläuterung zur Eigenschaft] 4.4 Steuerelemente Zum Aufbau einer grafischen Benutzeroberfläche gehören [ ] Steuerelemente. Dies sind die visuellen Komponenten, die in die Fenster eingefügt werden und das Erscheinungsbild und die Funktionalität der Benutzeroberfläche prägen beispielsweise Schaltflächen, Beschriftungen, Listenfelder etc. In der Windows Forms-Bibliothek gibt es für die typischen Steuerelemente vorgefertigte Klassen (Button, Label, Listbox etc.). Der Programmierer kann diese in der Regel direkt instanzieren; nur selten ist es erforderlich, eigene Steuerelement- Klassen abzuleiten. [L2, S. 296f]

60 4 Vorstellung der Programmierumgebung -54- Mit Hilfe der Toolbox, die sich standardmäßig auf der rechten Seite des Bildschirmes befindet (die Toolbox kann auch mit den Tastenkürzel Strg+Alt+X aufgerufen werden), können die verschiedenen Steuerelemente auf das Fenster gezogen werden. Der Quelltext für die richtige Darstellung des Steuerelements wird vom Forms Designer automatisch erzeugt. Die nachfolgende Tabelle zeigt die wichtigsten Steuerelemente sowie deren Beschreibungen. Steuerelement Button grundlegendes Aussehen Beschreibung Löst ein Ereignis aus, wenn der Benutzer darauf klickt. combobox Zeigt ein Textfeld mit einer Dropdownliste zulässiger Werte an, die bearbeitet werden kann. checkbox Ermöglicht dem Benutzer das Aktivieren oder Deaktivieren der verknüpften Option. radiobutton groupbox Ermöglicht dem Benutzer die Auswahl einer einzelnen Option in einer Gruppe von Optionen, wenn diese mit anderen RadioButtons zusammen verwendet werden. Zeigt einen Rahmen um eine Gruppe von Steuerelementen mit einer optionalen Beschriftung an. Label Stellt Laufzeitinformationen oder deskriptiven Text für ein Steuerelement bereit. tabcontrol Verwaltet eine Auflistung von Registrierkarten, die Steuerelemente und Komponenten enthalten können, und zeigt sie dem Benutzer an. TextBox picturebox Ermöglicht dem Benutzer die Eingabe von Text sowie die gleichzeitige Bearbeitung mehrerer Zeilen und das Maskieren des Kennworts bei der Eingabe. Zeigt ein Bild an. timer Die Komponente, die ein Ereignis in benutzerdefinierten Intervallen auslöst. menustrip Zeigt Anwendungsbefehle und optionen nach Funktionalität gruppiert an. Tabelle 25 Steuerelemente [P1, Erläuterung zum Steuerelement]

61 4 Vorstellung der Programmierumgebung -55- Die Eigenschaften der Steuerelemente entsprechen weitestgehend den Eigenschaften des Formulars. Eine wichtige zusätzliche Eigenschaft für Steuerelemente ist Visible und Name. Visible gibt an, ob ein Steuerelement sichtbar ist. Name gibt den Namen an, um das Element identifizieren zu können. Für die Listbox und die Combobox ist die Items- Eigenschaft zu erwähnen. Hier können die Elemente, die in der Combobox (oder Listbox) erscheinen sollen, eingetragen. Eine Ausnahme für die Vielzahl der Eigenschaften, ist der Timer. Da dieser nicht im Fenster erscheint, braucht er keine visuellen Eigenschaften. Die wichtigsten Eigenschaften des Timers sind Name, Enabled und Interval. Mit Interval kann die Frequenz der ausgelösten Ereignisse eingestellt werden. Die Zahl, die diese Eigenschaft erwartet, ist die Zeit in Millisekunden. Am Beispiel eines Buttons wird der Quelltext dargestellt, den der Windows Forms-Designer automatisch erstellt, wenn ein Steuerelement eingefügt wird. private: System::Windows::Forms::Button^ button1; this->button1 = (gcnew System::Windows::Forms::Button()); // // button1 // this->button1->location = System::Drawing::Point(12, 35); this->button1->name = L"button1"; this->button1->size = System::Drawing::Size(75, 23); this->button1->tabindex = 0; this->button1->text = L"button1"; this->button1->usevisualstylebackcolor = true; // Form1 // this->controls->add(this->button1); Die ersten beiden Zeilen erstellen das Steuerelement. Im Bereich Windows Form Designer generated code werden die nächsten Zeilen geschrieben und somit die grundlegenden Eigenschaften festgelegt. Mit ausgelösten Ereignissen können die Eigenschaften der einzelnen Steuerelemente verändert werden. 4.5 Ereignisse Ein Ereignis ist ein Mechanismus, der es einer Klasse ermöglicht, Code auszuführen, der vom Benutzer der Klasse aufgesetzt wurde (also nicht Teil der Klasse ist). [L2, Glossar Seite 451] Die Liste der Eigenschaften besitzt folgende Kopfzeile: Abbildung 30 Kopfzeile der Eigenschaftsliste [P1, Eigenschaftsliste]

62 4 Vorstellung der Programmierumgebung -56- Mit einem Tastendruck auf das Blitz-Symbol kommt die Liste der Ereignisse zum Vorschein. Dort sind alle Ereignisse, die ausgelöst werden können, für jedes Steuerelement aufgelistet. Wenn in dieser Liste doppelt auf das gewünschte Ereignis geklickt wird, wird automatisch der Quelltext erzeugt, der für dieses Ereignis erforderlich ist. Für einen Button, der ein Ereignis auslösen soll, wenn auf ihn geklickt wird, wird folgender Quelltext generiert. Im Bereich der Eigenschaften des Buttons wird this->button1->click += gcnew System::EventHandler(this, &Form1::button1_Click); angelegt. Der Designer registriert damit, dass im Quelltext eine Methode mit dem Namen button1_click existiert. Sobald auf den Button geklickt wird, wird der Quelltext innerhalb dieser Methode ausgeführt. Im weiteren Verlauf des Quelltextes wird auch automatisch das Grundgerüst der Methode angelegt: private: System::Void button1_click(system::object^ sender, System::EventArgs^ e) { } Das nachfolgende Beispiel zeigt ein kleines Programm, dass ein Label und ein Button als Steuerelemente enthalten. Wenn der Button gedrückt wird, soll im Label der Text Hallo Welt angezeigt werden. Wie in den vorhergehenden Abschnitten beschrieben wird dazu ein Projekt erstellt und die entsprechenden Steuerelemente in das Fenster gezogen. Anschließend wird für den Button das Ereignis Click erstellt. Zwischen den geschweiften Klammern kann nun der Quelltext geschrieben werden. In diesem Fall muss auf die Eigenschaft Text des Labels zugegriffen werden und entsprechend verändert werden. Dies geschieht mit folgender Zeile: label1->text = Hallo Welt ; Wenn das Programm damit ausgeführt wird, sieht das Programm wie folg aus: Abbildung 31 kleine Anwendung vor Druck auf den Button Nachdem auf den Button geklickt wurde, hat sich der Schriftzug von label1 in Hallo Welt verändert.

63 4 Vorstellung der Programmierumgebung -57- Abbildung 32 kleine Anwendung nach Druck auf den Button Die nachfolgende Tabelle zeigt eine Auswahl der möglichen Ereignisse, die ein Steuerelement (oder ein Formular) besitzen kann. Ereignis BackColorChanged Click DoubleClick DragEnter EnabledChanged Enter FontChanged MouseDown TextChanged VisibleChanged Tabelle 26 Ereignisse allgemein Bedeutung Das ausgelöste Ereignis, wenn der Wert der BackColor- Eigenschaft für Control geändert wird. Tritt auf, wenn auf die Komponente geklickt wird. Tritt auf, wenn auf die Komponente doppelgeklickt wird. Tritt ein, wenn ein Element mit der Maus in den Clientbereich dieses Steuerelements gezogen wird. Tritt ein, wenn sich der Aktivierungszustand des Steuerelements ändert. Tritt ein, wenn dieses Steuerelement zum aktiven Steuerelement des Formulars wird. Das ausgelöste Ereignis, wenn der Wert der Font- Eigenschaft für Control geändert wird. tritt auf, wenn sich der Mauszeiger über der Komponente befindet und eine Maustaste gedrückt wird. Das ausgelöste Ereignis, wenn der Wert der Text- Eigenschaft für Control geändert wird. Tritt ein, wenn sich die Sichtbarkeit des Steuerelements ändert. Wichtige Ereignisse, die nur bei bestimmten Steuerelementen vorkommen sind: Ereignis Bedeutung wichtig für Load Tritt ein, wenn der Benutzer das Formular Formular lädt KeyPress Tritt auf, wenn das Steuerelement fokussiert ist und der Benutzer TextBox eine Taste drückt und anschließend loslässt. SelectedIndexChanged Tritt auf, wenn sich der Wert der combobox SelectedIndex-Eigenschaft ändert. CheckedChanged Tritt ein, wenn die Eigenschaft Check geändert wird. checkbox, radiobutton Tabelle 27 Ereignisse spezifisch [P1, Erläuterung zum Ereignis]

64 5 Darstellung des Computerprogramms Darstellung des Computerprogramms Das erstellte Programm trägt den Arbeitstitel Nachweisführung nach EN Die Aufgabe des Programms ist es, für einen Stahlträger die Querschnitts- und Stabilitätsnachweise zu führen. Dabei wird nicht darauf eingegangen, wie die Bemessungswerte der Belastungen zustande kommen. Diese müssen manuell berechnet werden und danach in das Programm übertragen werden. Dieses Kapitel stellt die einzelnen Formulare und die entsprechenden Funktionen vor. 5.1 Überblick zum Programm Einbinden einer Datenbank Im Verlauf der Entwicklung von Nachweisführung nach EN 1993 wurde eine Datenbank erstellt, die die geometrischen und statischen Werte der einzelnen Profile enthält. Diese Datenbank wurde mit Microsoft Access 2007 erstellt und ist in insgesamt 14 Tabellen gegliedert. Um mit VS 2010 auf eine Datenbank zugreifen zu können ist ein eigener Namensraum erforderlich und wird mit der Zeile using namespace Microsoft::Office::Interop; ins Programm eingefügt. Außerdem sind Variablen erforderlich, um die Datenbank öffnen zu können und die Daten auszulesen. Die Variablen sind: String ^verbindungsstr; OleDbConnection ^verbindung; OleDbCommand ^befehl; OleDbDataReader ^leser; Die Variablen werden wie folgt festgelegt: verbindungsstr = "Provider=Microsoft.Jet.OLEDB.4.0;Data Source=Profile.mdb"; verbindung = nullptr; befehl = nullptr; leser = nullptr; Damit steht fest, dass die Quelle für die Daten die Datenbank Profile.mdb ist. Wenn die Datenbank nicht gefunden wird, soll nicht gleich das ganze Programm abstürzen, sondern eine Fehlermeldung ausgeben, die dem Benutzer ermöglichen soll, den Fehler zu korrigieren. Um dies zu realisieren, sollen alle Anweisungen im Zusammenhang mit der Datenbank überwacht werden. Dies wird mit der try-funktion ermöglicht. Direkt nach dieser Funktion muss ein catch-block stehen um mögliche Fehlerquellen aufzufangen. Das Grundgerüst für eine try-funktion sieht wie folgt aus.

65 5 Darstellung des Computerprogramms -59- try { // überwachte Anweisungen } catch (Exception ^e) { //Fehlerbehandlung } Um die Daten aus der Datenbank im Programm nutzen zu können muss zuerst eine Verbindung zur Datenbank erstellt werden. Danach muss eine Abfrage für die jeweilige Datenbank erstellt werden. Anschließend werden die Daten in Arrays kopiert (Arrays sind Datenstrukturen, in der man mehrere Variablen eines Datentyps vereinen kann [L2, S. 450]). Zum Schluss werden mögliche Fehlerquellen abgefangen und die Verbindung zur Datenbank getrennt. Die Daten, die der Datenbank zu Grunde liegen wurden aus [L1] Tabelle 8.73 Seite 8.73ff und den Profiltafeln Seite bis entnommen Ausgeben der angezeigten Werte Um im Programm angezeigte Werte in ein Word-Dokument übertragen zu können, muss im VS 2010 ein Verweis zu MS Word erstellt werden. Damit ein Verweis erstellt werden kann, müssen die Eigenschaften des Projekts aufgerufen werden (Menü: Projekt-> Nachweisführung nach EN 1993-Eigenschaften). Abbildung 33 Eigenschaften des Projekts [P1, Eigenschaften eines Projektes]

66 5 Darstellung des Computerprogramms -60- In der Mitte des Fensters sind die Verweise aufgelistet. Hier muss der Verweis Microsoft.Office.Interop.Word hinzugefügt werden (im Bild ist dieser bereits vorhanden). sobald dieser Verweis vorhanden ist, können Anweisungen geschrieben werden, damit Informationen in einem Dokument ausgegeben werden können. Da auch hier die Anweisungen überwach werden sollen, kommt eine try-funktion zum Einsatz. try { Word::ApplicationClass^ WordApp = gcnew Word::ApplicationClass(); WordApp->Visible=true; Object^ NoArg = System::Reflection::Missing::Value; WordApp->Documents->Add(NoArg,NoArg,NoArg,NoArg); } catch(exception^ e) { MessageBox::Show(e->Message); } Diese Zeilen definieren eine Klasse WordApp. Mit dieser Klasse wird ein neues Word- Dokument geöffnet. Mit dieser Klasse kann nun Einfluss auf die Ausgabe genommen werden (z.b. Schriftgröße, Schriftart, der Text der geschrieben werden soll Textfelder In Nachweisführung nach EN 1993 stehen an verschiedenen Stellen Textfelder. In diesen werden Eingaben von Zahlen erwartet. Bei einer Eingabe von Buchstaben würde das Programm abstürzen, da die Eingabe intern nicht verarbeitet werden kann. Aus diesem Grund wurde eine Sicherung programmiert, die die Tastatureingabe überwacht und nur bestimmte Werte zulässt. Dies ist mit Hilfe des ASCII (American Standard Code for Information Interchange) möglich, bei der jede mögliche Tastatureingabe u.a. in Dezimalzahlen codiert ist. Der folgende Quelltext wurde in jedem KeyPress Ereignis (Ereignis, dass ausgelöst wird, wenn das Textfeld markiert ist und eine Taste gedrückt wurde) eines Textfeldes geschrieben: { int Eingabe = Convert::ToInt32(e->KeyChar); if (Eingabe>47&&Eingabe<58 Eingabe == 8 Eingabe == 44 Eingabe == 127) e->handled = false; else e->handled = true; } Die Zahl, die sich im ASCII hinter der gedrückten Eingabe befindet, wird in die Variable Eingabe gespeichert. Danach wird die Zahl abgefragt. Wenn sie zwischen 47 und 58 liegt (Ziffern von 0 bis 9), gleich 8 (Taste Backspace), gleich 44 (Taste Komma) oder gleich 127 (Taste Entfernen) ist, wird der Tastendruck verarbeitet, sonst nicht.

67 5 Darstellung des Computerprogramms Hauptmenü Abbildung 34 Hauptmenü von Nachweisführung nach DIN EN 1993 Abbildung 34 zeigt den Entwurfsmodus des Hauptmenüs. Im Bereich 1 befinden sich 3 Comboboxen. Damit kann der für den Nachweis gewünschte Querschnitt ausgewählt werden. Zur Erleichterung für den Benutzer ist am Anfang nur eine Combobox sichtbar. Der Inhalt der sichtbaren Combobox ist I-Profil, U-Profil, Winkelprofil, Hohlprofil und rundes Hohlprofil. Damit wird eine Vorauswahl des Querschnitts getroffen. Außerdem wird eine weitere Combobox sichtbar. Die Items der Box richten sich nach der Vorauswahl. Die nachfolgende Tabelle zeigt die Items der Box in Abhängigkeit der Vorauswahl: Vorauswahl I-Profil U-Profil Winkelprofil Hohlprofil rundes Hohlprofil Tabelle 28 Inhalt der Comboboxen Item I, IPE, HEA, HEB, HEM UPE, UPN gleichschenklig, ungleichschenklig quadratisch (kalt), quadratisch (warm), rechteckig (kalt), rechteckig (warm) Da keine weitere Unterteilung vorliegt, werden sofort alle möglichen Rohrprofile dargestellt. Ist diese Wahl auch getroffen, erscheint eine weitere Combobox. In dieser kann das Profil (in Abhängigkeit der vorhergehenden Entscheidungen) ausgewählt werden. Wenn das Profil ausgewählt wurde, werden im Bereich 2 mit Hilfe einer Datenbank geometrische Größen und statische Werte angezeigt. Im Bereich 3 kann mit Hilfe einer Combobox die Festigkeitsklasse des Profils eingegeben werden. Zur Auswahl stehen hier S235, S275, S355, S420, S460. Somit werden die Streckgrenze und die Zugfestigkeit für die folgende Berechnung festgelegt. Mit Hilfe einer Combobox wird im Bereich 4 die Auswahl der Querschnittsklasse vorgenommen.

68 5 Darstellung des Computerprogramms -62- Ist die Querschnittsklasse unbekannt, kann mit einem Klick auf den Button QK berechnen die QK bestimmt werden. Dieser Klick öffnet ein von Matthias Maul erstelltes Programm, das speziell dazu entwickelt wurde, die Querschnittsklasse eines gegebenen Profils zu bestimmen. Der Aufruf eines externen Programms (innerhalb der Methode button1_click) wird mit folgendem Quellcode realisiert: private: System::Void button1_click(system::object^ sender, System::EventArgs^ e) { Process ^p; ProcessStartInfo ^pinfo; pinfo = gcnew ProcessStartInfo(); pinfo->verb = "open"; pinfo->filename = "Querschnittsklassen neu.exe"; pinfo->useshellexecute = true; p = Process::Start(pInfo); } Das Ergebnis des externen Programms muss manuell in die dafür vorgesehene Combobox einzutragen. Im fünften Bereich sind die Bemessungswerte der Schnittgrößen einzutragen. Die entsprechenden Einheiten sind abgebildet. Wenn der Button Allgemeine Werte ausgeben geklickt wird, werden die eingestellten Werte in einem Word Dokument ausgegeben. Diese können so entsprechend formatiert werden. Die Menüleiste im Hauptfenster dient dazu, die Nachweise auszuwählen, die geführt werden sollen. Die nachfolgende Tabelle zeigt die Menüpunkte sowie deren Untermenüpunkte: Menüpunkte Untermenüpunkte Datei Beenden Einzelnachweise Zugbeanspruchung, Druckbeanspruchung, Einaxiale Biegebeanspruchung, Querkraftbeanspruchung ohne Torsion Kombinierte Nachweise Querkraft und Torsion; My, Vz und N; Mz, Vy und N; zweiachsige Biegung, Querkräfte und Normalkraft Stabilitätsnachweise Druckbeanspruchung; einachsige Biegebeanspruchung; Beanspruchung aus Druck und Biegung Hilfe Hinweise; Über Tabelle 29 Menüpunkte Zur Verdeutlichung sollen als Beispiel folgende Werte eingegeben werden. Profil: S275, HEA 300, QK 2 Belastungen: N = 300 kn, V z = 50 kn, M y = 150 knm

69 5 Darstellung des Computerprogramms -63- Abbildung 35Hauptmenü mit Beispiel Bild 35 zeigt das Hauptmenü mit den eingegebenen Werten. Ein Klick auf Allgemeine Werte ausgeben lässt ein neues Worddokument mit folgendem Inhalt entstehen: Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEA 300 Festigkeitswerte: f_y = 27,5 kn/cm²; f_u = 43 kn/cm² Querschnittsklasse: 2 Profilmaße und statische Werte h = 290 mm; b = 300 mm; s = 8,5 mm; t = 14 mm; r = 27 mm A = 113 cm²; A_vy = 84 cm²; A_vz = 37,8 cm²; A_w = 22,27 cm² I_y = cm^4; W_el,y = 1260 cm³; W_pl,y = 1383 cm³; i_y = 12,7 cm I_z = 6310 cm^4; W_el,z = 421 cm³; W_pl,z = 641,2 cm³; i_z = 7,49 cm Schnittgrößen (Bemessungswerte) N_Ed = 300 kn M_y,Ed = 150 knm; V_z,Ed = 50 kn M_z,Ed = 0 knm; V_y,Ed = 0 kn

70 5 Darstellung des Computerprogramms Einzelnachweise Nachweis der Zugbeanspruchung Abbildung 36 Entwurf des Formulars für Nachweis der Zugbeanspruchung Bild 36 zeigt den Entwurfsmodus des Formulars für den Nachweis der Zugbeanspruchung. Die eingegebene Normalkraft wird bei diesem Nachweis automatisch als Zugkraft erkannt. Bei diesem Nachweis ist in der Regel der Lochabzug zu beachten. Daher kann mit Hilfe der Radiobuttons ausgewählt werden, ob beim gewählten Träger der Abzug zu beachten ist. Wenn der Abzug zu beachten ist, erscheint ein Textfeld, in das die Nettoquerschnittsfläche einzutragen ist, andernfalls bleibt das Textfeld unsichtbar. Die angezeigten Label zeigen die Berechnungsschritte an. Die Programmierung erfolgt nach folgendem Struktogramm. Abbildung 37 Struktogramm für Nachweis der Zugbeanspruchung Mit dem Beispiel aus Abschnitt 5.2 zeigt Bild 38 das Aussehen des Formulars. Abbildung 38 Formular mit Beispiel Die Werte, die ausgegeben werden, wenn drucken geklickt wird, sind die Folgenden.

71 5 Darstellung des Computerprogramms -65- Nachweis eines Trägers auf Zugbeanspruchung Profil: HEA 300 QK: 2 Festigkeit: S275 N_t,Rd = N_pl,Rd = A*f_y/gamma_M0 = 113 * 27,5 / 1,0 = 3.107,50 N_t,Ed / N_t,Rd = 300 / 3.107,50 = 0,10 <=1 Nachweis erfüllt Das Label, das die Zeile Nachweis erfüllt anzeigt, wird in rot geschrieben, falls der Nachweis nicht erfüllt ist Nachweis der Druckbeanspruchung Die eingegebene Normalkraft wird bei diesem nachweis automatisch als Druckkraft angenommen. Löcher für Verbindungsmittel müssen nicht mit beachtet werden, wenn sie mit entsprechenden Verbindungsmitteln gefüllt sind. Sollte der Querschnitt in Querschnittsklasse 4 eingeordnet werden, ist die effektive Querschnittsfläche manuell zu berechnen und in das entsprechende Textfeld einzutragen, mit Ausnahme für die Profile der nachfolgenden Tabelle. Die Tabelle zeigt für Profile der QK 4 die effektiven Querschnitte in cm 2. Diese Werte wurden bereits im Programm berücksichtigt. S235 S275 S355 IPE HEA HEB HEM IPE HEA HEB HEM IPE HEA HEB HEM , , , , ,3 93, ,1 108, ,4 129,1 125,3 208, ,3 149,5 145,1 219, ,7-232, ,2-248,2 301, ,2-272,7-265,4 320, ,5-300,0 358,4-291,1 348,1 409, ,7 384,0-315,3 376,7 428,6-305,3 364,8 415,4 Tabelle 30 effektive Querschnittsfläche [L1, Tab. 8.13, S. 8.13] Sollte eines der in der Tabelle aufgelistetes Profil gewählt werden, wird das Textfeld nicht erscheinen. Der Nachweis wird mit Hilfe des folgenden Struktogramms programmiert:

72 5 Darstellung des Computerprogramms -66- Abbildung 39 Struktogramm für Druckbeanspruchung Das nachfolgende Bild zeigt das Formular für den Druckbeanspruchungsnachweis mit der Eingabe des oben genannten Beispiels: Abbildung 40 Formular für Druckbeanspruchung Mit einem Klick auf den Button Drucken wird ein neues Dokument mit folgendem Inhalt geöffnet: Druckbeanspruchungsnachweis eines Trägers Profil: HEA 300 QK: 2 Festigkeit: S275 N_c,Rd = A * fy /gamma_m0 = 113 * 27,5 / 1,0 = 3107,5 N / N_c,Rd = 300 / 3107,5 = 0,10 <=1 Nachweis erfüllt Sollte der Nachweis nicht erfüllt sein, färbt sich der Schriftzug rot.

73 5 Darstellung des Computerprogramms Nachweis der einachsigen Biegebeanspruchung In dem Formular für den Nachweis der einachsigen Biegebeanspruchung kann mittels Radiobuttons entschieden werden, ob der Nachweis mit Biegung um die y-achse oder um die z-achse angezeigt werden soll. Sollte der Querschnitt in QK 4 eingeordnet sein, muss das effektive Widerstandsmoment in das entsprechende Textfeld eingetragen werden. Dieses Textfeld ist nur sichtbar, wenn wirklich etwas eingetragen werden muss. Folgendes Struktogramm hilft bei der Programmierung: Abbildung 41 Struktogramm für Nachweis der Biegung Abbildung 42 Formular für Nachweis der Biegung Bild 42 zeigt die Formulare mit den Daten des Beispiels. Die ausgegeben Daten sind folgende: Biegebeanspruchungsnachweis eines Trägers Profil: HEA 300 QK: 2 Festigkeit: S275 Biegung um die y-achse M_c,Rd = M_pl,Rd = W_pl * f_y / gamma_m0 = 1383 * 27,5 / 1,0 = 38032,5 M_Ed / M_c,Rd = 150 / 38032,5 = 0,39 <=1 Nachweis erfüllt Die ausgegebenen Daten für Biegung um die z-achse entfallen hier, da in diesem Beispiel keine Biegung um diese Achse vorliegt.

74 5 Darstellung des Computerprogramms Nachweis der Querkraftbeanspruchung ohne Torsion Mit Hilfe von Radiobuttons muss die Richtung der Querkraftbeanspruchung ausgewählt werden. Die wirksame schubfläche wurde nach Tabelle 5 für jedes Profil berechnet und in die Datenbank der Profildaten eingetragen. Die Werte der wirksamen Schubfläche müssen im Fall eines Winkelprofils in die entsprechenden Textfelder eingetragen werden. Bild 43 zeigt das Struktogramm, das der Programmierung zu Grunde liegt: Abbildung 43 Struktogramm für Nachweis der Querkraft Abbildung 44 Formular für Nachweis der Querkraft Das Bild zeigt das Ergebnis des Formulars mit dem obigen Beispiel. Folgende Daten werden ausgegeben: Querkraftbeanspruchungsnachweis eines Trägers Profil: HEA 300 QK: 2 Festigkeit: S275 A_vz = 37,8 cm^2 A_vz * f_y / (Wurzel(3)*gamma_M0) = 37,8 * 27,5 /(Wurzel(3) * 1,0) = 600,16 V_Ed/V_c,Rd = 50 / 600,16 = 0,08 <=1 Nachweis erfüllt

75 5 Darstellung des Computerprogramms Kombinierte Nachweise Nachweis von Querkraft und Torsion Mit Hilfe der Radiobuttons ist die Auswahl zu treffen, welcher Nachweis angezeigt werden soll (Querkraft in y-richtung oder in z-richtung). Je nach Querschnitt sind die Schubspannungen aus primärer und sekundärer Torsion vom Benutzer zu berechnen und in die dafür vorgesehenen Textfelder einzutragen. Für Winkelprofile wird dieser Nachweis nicht vom Programm durchgeführt. Der Quelltext wurde in Anlehnung an folgendes Struktogramm erstellt: Abbildung 45 Struktogramm für Nachweis von Querkraft und Torsion Mit der Annahme Tau_t,Ed = 5 kn/cm 2 werden folgende Daten ausgegeben: Nachweis eines Trägers bei kombinierter Beanspruchung aus Querkraft und Torsion Profil: HEA 300 QK: 2 Festigkeit: S275 Querkraft in z-richtung V_pl,Rd = A_vz * f_y/(wurzel(3)*gamma_m0) = 37,8 * 27,5 /(1,732 * 1,0) V_pl,Rd = 600,16 Tau_t,Ed [kn/cm^2] = 5 V_pl,T,Rd = [Wurzel(1-(Tau_t,Ed * Wurzel(3) * gamma_m0) / (1,25 * f_y))] * V_pl,Rd V_pl,T,Rd = [Wurzel(1-( 5,00* Wurzel(3)*1,0) / (1,25*27,5))]*600,16 V_pl,T,Rd = 519,08 kn V_ed / V_pl,T,Rd = 50 / 519,08 = 0,10 <=1 Nachweis erfüllt

76 5 Darstellung des Computerprogramms Nachweis der Biegung um die y-achse, zugehöriger Quer- und Normalkraft Um den Nachweis mit diesem Formular durchführen zu können, müssen die Einzelnachweise für Normalkraft, Querkraft und Biegung vom Benutzer überprüft werden. Im Fall der Querschnittsklasse 4 müssen effektive Querschnittswerte und die Verschiebung der Hauptachse in die dafür vorgesehenen Textfelder eingetragen werden. Das nachfolgende Struktogramm und der dazugehörige Quelltext gelten für I-, H- und U-Profile der Querschnittsklasse 1 und 2. Abbildung 46 Struktogramm für Nachweis der Biegung um y-achse (I-Profile) Für die nachfolgenden Nachweise werden nur die Struktogramme gezeigt. Der genaue Quelltext ist im Anhang nachzulesen. Das nachfolgende Struktogramm gilt für Hohlprofile der Querschnittsklassen 1 und 2.

77 5 Darstellung des Computerprogramms -71- Abbildung 47 Struktogramm für Nachweis der Biegung um y-achse (Hohlprofile) Das nachfolgende Struktogramm gilt Rohrquerschnitte der Querschnittsklasse 1 und 2. Abbildung 48 Struktogramm für Nachweis der Biegung um y-achse (Rohrquerschnitte)

78 5 Darstellung des Computerprogramms -72- Bei dem Nachweis für I-Profile der Querschnittsklasse 3 sind die Nachweise für die Randfaser und für die Achsen in der Mitte des Flansches zu führen. Diese werden in einem Struktogramm zusammengeführt: Abbildung 49 Struktogramm für Nachweis der Biegung um y-achse (QK 3; I-Profile) Für alle anderen Querschnitte der Querschnittsklasse 3 gilt folgender Ablauf: Abbildung 50 Struktogramm für Nachweis der Biegung um y-achse (QK 3; andere Profile) Für Querschnitte der Querschnittsklasse 4 gelten folgende Vorschriften: Abbildung 51 Struktogramm für Nachweis der Biegung um y-achse (QK 4)

79 5 Darstellung des Computerprogramms -73- Wenn das oben genannte Beispiel in das Programm übertragen wird, können folgende Daten mit einem Klick auf drucken ausgegeben werden: Interaktionsnachweis M_y, V_z und N Profil: HEA 300 Festigkeit: S275 QK: 2 V_pl,z = A_vz*f_y*Wurzel(3) = 37,8 * 27,5 / 1,732 = 600,16 kn V_z = 50 <= 0,5* V_plz =300,08 Querkraft muss nicht berücksichtigt werden N_pl,Rd = A * fy / gamma_m0 = 113 * 27,5 / 1,0 = 3.107,50 kn 0,25* N_pl,Rd = 3.107,50/4 = 776, * ( * 14 ) * 8,5 / 100 * 27,5 = 306,21 kn min( 776,88, 306,21 ) = 306,21 N_Ed = 300 < min( 776,88, 306,21 ) = 306,21 Einfluss der Normalkraft muss nicht berücksichtigt werden n = 0 a = 0 M_pl,y,Rd * (1-n)/(1-0,5*a) = 380,33*(1-0)/(1-0,5*0) = 380,33 M_N,y,Rd = min(m_pl,y,rd; M_pl,y,Rd * (1-n)/(1-0,5*a))= min(380,33; 380,33) M_N,y,Rd = 380,33kNm M_y,Ed = 150 <= M_N,y,Rd = 380,33 Nachweis erfüllt

80 5 Darstellung des Computerprogramms Nachweis der Biegung um die z-achse, zugehöriger Quer- und Normalkraft Um den Nachweis mit diesem Formular durchführen zu können, müssen die Einzelnachweise für Normalkraft, Querkraft und Biegung vom Benutzer überprüft werden. Im Fall der Querschnittsklasse 4 müssen effektive Querschnittswerte und die Verschiebung der Hauptachse in die dafür vorgesehenen Textfelder eingetragen werden. Das nachfolgende Struktogramm und der dazugehörige Quelltext gelten für I-, H- und U-Profile der Querschnittsklasse 1 und 2: Abbildung 52 Struktogramm für Nachweis der Biegung um z-achse (QK 1, 2; I-Profile) Für Hohlprofile der Querschnittsklasse 1 und 2 gilt folgendes Struktogramm. Abbildung 53 Struktogramm für Nachweis der Biegung um z-achse (QK 1, 2; Hohlprofile) Die Nachweise für Rohrprofile für Querschnittsklasse 1 und 2 sind mit folgendem Struktogramm zu erstellen.

81 5 Darstellung des Computerprogramms -75- Abbildung 54 Struktogramm für Nachweis der Biegung um z-achse (QK 1, 2; Rohrprofile) Für einfach- und doppeltsymmetrische I-Profile der Querschnittsklasse 3 gilt: Abbildung 55 Struktogramm für Nachweis der Biegung um z-achse (QK 3; I-Profile) Für alle anderen Querschnitte der Querschnittsklasse 3 gilt: Abbildung 56 Struktogramm für Nachweis der Biegung um z-achse (QK 3; andere Profile)

82 5 Darstellung des Computerprogramms -76- Bei Profilen der Querschnittsklasse 4 gilt: Abbildung 57 Struktogramm für Nachweis der Biegung um z-achse (QK 4) Damit die ausgegebenen Daten auswertbar sin, wird für diesen und für den nächsten Abschnitt das Beispiel mit den Belastungen V y = 50 kn und M z = 100 knm erweitert. Die damit entstehenden Werte sind: Interaktionsnachweis M_z, V_y und N N_plRd = A*f_y/gamma_M0 = 113*27,5/1,0 = 3.107,50 kn V_plRd = A_vy*f_y/(Wurzel(3)*gamma_M0) = 84*27,5/(1,732*1,0) = 1.333,68 kn M_plzRd = Wpl_z*fy/gamma_M0 = 641,2*27,5/(100*1,0) = 176,33kNm Profil: HEA 300; QK: 2; Festigkeit: S275 V_y = 50 <=0,5*V_pl,y,Rd = 666,84 Querkraft muss nicht berücksichtigt werden N = 300< h_w*t_w*f_y/gamma_m0 = (290-2*14)*8,5/100 *27,5/1,0 =612,43--> Der Einfluss der Normalkraft muss nicht berücksichtigt werden n = 0,00 a = 0,00 n<=a M_NzRd = M_plzRd = 176,33kNm M_z = 100 <= M_NzRd = 176,33 Nachweis erfüllt

83 5 Darstellung des Computerprogramms Nachweis zweiachsiger Biegung, dazugehörige Querkräfte und Normalkraft Für den Nachweis eines Stahlbauteils mit zweiachsiger Biegung müssen zunächst die Biegung um die y-achse und um die z-achse separat betrachtet werden, um so die Biegebeanspruchbarkeiten um die einzelnen Achsen zu ermitteln. Dies geschieht intern mit dem Hinweis, dass die Vorgehensweise in den Formularen M y, V z und N bzw. M z, V y und N ersichtlich ist. Die Biegebeanspruchbarkeiten werden lediglich in einem Label angezeigt. Diese Werte werden anschließend nach den gültigen Regeln kombiniert und somit der Nachweis erbracht. Der Nachweis für Profile der Querschnittsklasse 1 und 2 wird mit folgendem Struktogramm erstellt: Abbildung 58 Struktogramm für den Nachweis zweiachsiger Biegung (QK 1, 2) Das nachfolgende Bild zeigt die Nachweisführung für Profile der Querschnittsklasse 3. Abbildung 59 für den Nachweis zweiachsiger Biegung (QK 3) Der Nachweis für die Profile der Querschnittsklasse 4 ist analog zu dem für die Profile der Querschnittsklasse 3. Es sind lediglich die effektiven Querschnittswerte zu benutzen und das zusätzliche Moment infolge der Verschiebung der Hauptachse zu berücksichtigen.

84 5 Darstellung des Computerprogramms -78- Abbildung 60 für den Nachweis zweiachsiger Biegung (QK 4) Mit den Werten aus dem Beispiel ergeben sich folgende Daten: Interaktionsnachweis: zweiachsige Biegung, dazugehörige Querkräfte und Normalkraft Profil: HEA 300; QK: 2; Festigkeit: S275 M_NyRd = 380,33 knm M_NzRd = 176,33 knm Profil: HEA 300; QK: 2 Auf Grund des gewählten Profils ergeben sich folgende Werte: Alpha = 2,00 Beta = 1,00 NW = (My/M_NyRd)^alpha+ (Mz/M_NzRd)^beta = (150/380,33)^2,00 +(100/176,33)^1,00 NW = 0,72<=1 Nachweis erfüllt

85 5 Darstellung des Computerprogramms Stabilitätsnachweise Nachweis auf Druck beanspruchter Stäbe Abbildung 61 Formular zum Stabilitästnachweis (Druck) Bild 61 zeigt die Entwurfsansicht des Formulars für den Stabilitätsnachweis auf Druck beanspruchter Stäbe. Im Fall der Querschnittsklasse 4 muss die effektive Querschnittsfläche eingegeben werden. Unabhängig von der Querschnittsklasse werden weitere Daten benötigt, um den Nachweis durchführen zu können. Die Länge des Stabes und der Knicklängenbeiwert (als Hilfestellung dient das Bild mit ausgewählten Fällen) werden benötigt. Die eingegebene Normalkraft wird automatisch als Druckkraft angenommen. Mit den Radiobutton kann entschieden werden, um welche Achse der Knicknachweis geführt werden soll. Als Hilfe bei der Programmierung dient folgendes Struktogramm: Abbildung 62 Struktogramm zum Stabilitätsnachweis (Druck)

86 5 Darstellung des Computerprogramms -80- Um die Stabilitätsnachweise durchführen zu können, wird das Beispiel mit folgenden Werten erweitert: Träger auf zwei Stützen, Trägerlange: 5m Die damit ausgegebenen Daten sind folgende: Stabilitätsnachweis - Knicken Profil: HEA 300 QK: 2 Festigkeit: S275 Länge des Stabes l [cm] =500 Knicklängenbeiwert Beta =1 L_cr = beta * L = 1 * 500 = 500,00 N_cr = PI^2 * E * Iz / L_cr^2 = PI^2 * * 6310/500,00^2 = 5.231,29 lambda = Wurzel(A*fy/Ncr) = Wurzel(113*27,5/5.231,29) = 0,77 KSL c --> alpha = 0,49 fi = 0.5*(1+alpha*(lambda-0.2)+lambda^2) = 0.5*(1+0,49*(0,77-0.2)+0,77^2) = 0,94 chi = 1/(fi+Wurzel(fi^2-lambda^2)) = 1/(0,94+Wurzel(0,94^2-0,77^2)) <=1 --> chi = 0,68 NbRd = chi*a*fy/gamma_m1 = 0,68*113*27,5/1.1 = 1.922,52 N/N_b,Rd = 300/1.922,52 = 0,16 <=1 Nachweis erfüllt Stabilitätsnachweis bei einachsiger Biegebeanspruchung Abbildung 63 Formular zum Stabilitätsnachweis (Biegung) Bild 63 zeigt den Entwurfsmodus des Formulars für den Stabilitätsnachweis bei einachsiger Biegebeanspruchung. Im Fall der Querschnittsklasse 4 muss das effektive Widerstandsmoment eingegeben werden.

87 5 Darstellung des Computerprogramms -81- Mit Hilfe des Bildes kann auf Grundlage der Momentenverteilung der Beiwert k c bestimmt werden. Außerdem muss das ideale Biegedrillknickmoment berechnet werden und in das dafür vorgesehene Textfeld eingetragen werden. Eine Neuerung in Version 1.2 ist, dass ein neues Formular eingefügt wurde, dass die Bestimmung des idealen Biegedrillknickmomentes für I-Profile übernimmt. Die Berechnung und die Programmierung des Nachweises erfolgt nach folgendem Struktogramm. Abbildung 64 Struktogramm zum Stabilitätsnachweis (Biegung) Unter der Annahme des Beispiels und dem Momentenverlauf, der aus einer gleichmäßigen Streckenlast entstehen würde, ergibt der Ausdruck des Programms folgendes Ergebnis. Biegedrillknicknachweis für Stäbe mit einachsiger Biegung (ohne Normalkraft) Profil: HEA 300 QK: 2 Festigkeit: S275 M_cr [kncm] = 70888,7 kc = 0,94 h/b = 290/300 = 0,97 <= > KSL b --> alpha = 0,34 QK 2 -> W = W_pl = 1383 cm^3 lambda_lt = Wurzel(W_y*f_y/M_cr) = Wurzel(1383 * 27,5 / 70888,7) = 0,73 fi_lt = 0.5*(1+alpha_LT*(lambda_LT-0.4)+0.75*lambda_LT^2) = 0.5*(1+0,34*(0,73-0.4)+0.75*0,73^2) = 0,76 Chi = 1/(fi_LT+Wurzel(fi_LT^2-0.75*lambda^2)) = 1/(0,76Wurzel(0,76^2-0.75*0,73^2)) Chi = 0,85 f = 1-0.5*(1-kc)*(1-2.0*(lambda-0.8)^2) = 1-0.5*(1-0,94)*(1-2.0*(0,73-0.8)^2) = 0,97 Chi_mod = Chi/f = 0,85/0,97 Chi_mod = 0,88 M_b,Rd = Chi_mod * W * fy / gamma_m1 = 0,88 * 1383 * 27,5/1.1 = ,30 kncm M_y / M_b,Rd = 150 * 100 / ,30 = 0,49 <= 1,0 Nachweis erfüllt

88 5 Darstellung des Computerprogramms Stabilitätsnachweis bei Druck- und Biegebeanspruchung Abbildung 65 Formular zum Stabilitätsnachweis (Druck und Biegung) Bild 65 zeigt den Entwurfsmodus für den Stabilitätsnachweis eines Bauteils, das auf Druck und Biegung belastet ist. Im Fall der Querschnittsklasse 4 müssen die effektiven Querschnittswerte (Fläche, Widerstandsmomente um y- und z-achse, Außermittigkeiten auf Grund der Verschiebung der Hauptachse) in die dafür vorgesehene Textfelder eingetragen werden. Die äquivalente Momentenbeiwerte C my, C mz und C mlt müssen mit Hilfe des Bildes und dem Momentenverlauf vom Benutzer ausgerechnet werden. Die Beiwerte lambda y, lambda z, Chi y sowie Chi z müssen zwar selbstständig eingetragen werden, könne jedoch im Menü Stabilitätsnachweise Druckbeanspruchung abgelesen werden. Analog dazu muss der Beiwert Chi LT vom Benutzer eingetragen werden. Dieser kann jedoch im Menü Stabilitätsnachweise einachsige Biegebeanspruchung abgelesen werden. Die Programmierung des Formulars wird anhand des folgenden Struktogramm erstellt.

89 5 Darstellung des Computerprogramms -83- Abbildung 66 Struktogramm zum Stabilitätsnachweis (Druck und Biegung) Mit dem Beispiel wird folgendes Ergebnis ausgegeben. Nachweis eines auf Biegung und Druck beanspruchten Stabes Profil: HEA 300 Festigkeit: S275 Querschnittsklasse: 2 N_Rk = f_y * A = 27,5 * 113 = 3.107,50 kn M_y,Rk = f_y * W_pl,y = 27,5 * 1383 = ,50 kncm M_z,Rk = f_y * W_pl,z = 27,5 * 641,2 = ,00 kncm delta M_y = 0 delta M_z = 0 C_my =0,9 C_mz =0,9 C_mLT =0,95 lambda_y =0,45 lambda_z =0,77 Chi_y =0,9 Chi_z =0,68 Chi_LT =0,88

90 5 Darstellung des Computerprogramms -84- Interaktionsbeiwerte k_yy = Cmy*(1+(lambday-0.2)*N/(Chiy*NRk/1.1)) = 0,90*(1+(0,45-0.2)*300/(0,90*3.107,50/1.1)) = 0,93<= Cmy*(1+0.8*N/(Chiy*NRk/1.1)) = 0,90*(1+0.8*300/(0,90*3.107,50/1.1)) = 0,98 k_yy = 0,93 k_zz = Cmz*(1+(2*lambdaz-0.6)*N/(Chiz*NRk/1.1)) = 0,90*(1+(2*0,77-0.6)*300/(0,68*3.107,50/1.1)) = 1,03<= Cmz*(1+1.4*N/(Chiz*NRk/1.1)) = 0,90*(1+1.4*300/(0,68*3.107,50/1.1)) = 1,10 k_zz = 1,03 k_yz = 0,6 * k_zz = 0,6 * 1,03 k_yz = 0,62 k_zy = 0,6 * k_yy = 0,6 * 0,93 k_zy = 0,56 Nachweise: N/(Chiy*NRk/gamma_M1)+kyy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kyz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,90*3.107,50/1.1)+0,93*(150*100+0,00)/(0,88*38.032,50/1.1)+0,62*(100*100+0,00)/( ,00/1.1) = 0,96 <=1 N/(Chiz*NRk/gamma_M1)+kzy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kzz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,68*3.107,50/1.1)+0,56*(150*100+0,00)/(0,88*38.032,50/1.1)+1,03*(100*100+0,00)/( ,00/1.1) = 1,07 >1 Nachweise nicht erfüllt 5.6 Versionsgeschichte Version 1.0 Das Computerprogramm berechnet die Querschnitts und Stabilitätsnachweise für Stahlbauteile. Die Ergebnisse der Berechnung werden in den jeweiligen Formularen ausgegeben. Profilinformationen werden aus einer Datenbank ausgelesen. Version 1.1 In jedem Formular werden Profilinformationen angezeigt. Es wurde ein neues Formular zur Berechnung des idealen Biegedrillknickmomentes Mcr für I-Profile eingefügt. Um die Querschnittsklasse schneller bestimmen zu können, wurde das Programm Querschnittsklassifizierung nach DIN EN 1993 in Nachweisführung nach EN 1993 integriert. Der Menüpunkt Hilfe wurde eingefügt. Version 1.2 (aktuelle Version) Die Ergebnisse der Berechnung lassen sich in ein MS Worddokument übertragen und können so besser weiterverarbeitet werden. Außerdem wurde der Menüpunkt Hilfe erweitert.

91 5 Darstellung des Computerprogramms -85- Mögliche Veränderungen für zukünftige Versionen Beim Ausgeben der Daten in ein MS Worddokument sollen zusätzlich grafische Elemente zum besseren Verständnis ausgegeben werden. Es soll eine Option hinzugefügt werden, bei der gewählt werden kann, welche Nachweise ausgegeben werden sollen. Somit ist es möglich, mehrere Nachweise gleichzeitig ausgeben zu lassen. Eine Anpassung der Größe der Formulare, sowie eine grafische Überarbeitung soll durchgeführt werden. Für den Fall der Querschnittsklasse 4 werden die effektiven Querschnittswerte automatisch berechnet. Eine weitere Möglichkeit der Veränderung ist, dass mehr Informationen zur Belastung eingegeben werden sollen. Somit können einige Momentenbeiwerte automatisch berechnet werden. Eine Möglichkeit zur Erweiterung des Programms bietet der Beulnachweis von plattenförmigen Bauteilen. Beim Stabilitätsnachweis unter Druck und Biegebeanspruchung müssen einige Hilfswerte manuell aus anderen Formularen übertragen werden. Diese werden in den nächsten Versionen der Anwendung automatisch übertragen.

92 6 Vergleichende Berechnungen Vergleichende Berechnungen Um Aussagen über die Qualität der Anwendung treffen zu können, werden im folgenden Kapitel Berechnungen aus [L3] mit den Berechnungen des Programms verglichen. 6.1 Beispiel 1: Tragfähigkeit eines Querschnitts unter M y und V z Abbildung 67 Beispielrechnung 1 [L3, S. 8.21] Nachweisführung nach EN 1993 gibt die folgenden Werte aus. Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEA 260 Festigkeitswerte: f_y = 35,5 kn/cm²; f_u = 51 kn/cm² Querschnittsklasse: 3 Profilmaße und statische Werte h = 250 mm; b = 260 mm; s = 7,5 mm; t = 12,5 mm; r = 24 mm A = 86,8 cm²; A_vy = 65 cm²; A_vz = 28,7 cm²; A_w = 16,88 cm² I_y = cm^4; W_el,y = 836 cm³; W_pl,y = 919,8 cm³; i_y = 11 cm I_z = 3670 cm^4; W_el,z = 282 cm³; W_pl,z = 430,2 cm³; i_z = 6,5 cm

93 6 Vergleichende Berechnungen -87- Schnittgrößen (Bemessungswerte) N_Ed = 0 kn M_y,Ed = 250 knm; V_z,Ed = 400 kn M_z,Ed = 0 knm; V_y,Ed = 0 kn Interaktionsnachweis M_y, V_z und N Nachweis für die Randfaser N_Ed = 0 kn; A = 86,8 cm^2 M_y,Ed = 250 knm; W_el,y = 836 cm^3 N_Ed/A + M_y,Ed*100/W_el,y = 0 / 86, *100 / 836 = 29,90 f_y / gamma_m0 = 35,5 / 1,0 29,90 <= 35,5 Nachweis erfüllt Nachweis für Achse 1 (Mitte Flansch) V_pl,z = A_vz*f_y*Wurzel(3) = 28,7 * 35,5 / 1,732 = 588,23 kn V_z = 400 kn > 0,5 * V_pl,z = 294,12 kn Einfluss der Querkraft muss berücksichtigt werden. Rho = (2* Vz/V_plz-1)^2 = (2*400 / 588,23-1)^2 = 0,13 N_Ed/A+M_y,Ed/I_y*(h-t_f)/2 = 0/86,8+250*100/10450*(250-12,5)/(2*10) 28,41 <= f_y,red/gamma_m0 = 30,90/ 1,0 Nachweis erfüllt

94 6 Vergleichende Berechnungen Beispiel 2: Nachweis eines HEB 300 mit M y, V z, N Abbildung 68 Beispielrechnung 2 [L3, S. 8.22] Nachweisführung nach EN 1993 gibt die folgenden Werte aus. Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEB 300 Festigkeitswerte: f_y = 23,5 kn/cm²; f_u = 36 kn/cm² Querschnittsklasse: 1

95 6 Vergleichende Berechnungen -89- Schnittgrößen (Bemessungswerte) N_Ed = 2000 kn M_y,Ed = 150 knm; V_z,Ed = 500 kn M_z,Ed = 0 knm; V_y,Ed = 0 kn Interaktionsnachweis M_y, V_z und N V_pl,z = A_vz*f_y*Wurzel(3) = 47,4 * 23,5 / 1,732 = 643,11 kn V_z = 500 > 0,5* V_plz =321,56 Querkraft muss berücksichtigt werden Rho = (2*V_z,Ed/V_pl,z-1)^2 = (2*500 / 643,11-1)^2 = 0,31 M_V,y,Rd* = (W_pl,y-rho*A_V,z^2/(4*s))*f_y/gamma_M0 = (1869-0,31*47,4^2/(4*11))*23,5/1,0 = 435,52 knm M_y,c,Rd = W_pl,y *f_y / gamma_m0 = 1869*23,5/1,0 = 439,22 knm M_V,y,Rd = min(m_v,y,rd*;m_y,c,r) = min(435,52; 439,22 ) = 435,52 a_v,z = A_V,z / A = 47,4/149 = 0,32 N_pl,Rd = A * fy / gamma_m0 = 149 * 23,5 / 1,0 = 3.501,50 kn N_V,Rd = N_pl,Rd * (1-a_V,z*rho) = 3.501,50*(1-0,32*0,31) = 3.158,46kN 0,25* N_V,Rd = 3.158,46/4 = 789, * ( * 19 ) * 11 / 100 * 23,5*(1-rho) = 234,35 kn min( 789,62, 234,35 ) = 234,35 N_Ed = 2000 > min( 789,62, 234,35 ) = 234,35 Einfluss der Normalkraft muss berücksichtigt werden n = N_Ed / N_V,Rd = 2000 / 3.158,46 = 0,63 hilfs_a = (1-rho)*(A-2*b*t)/A = (1-0,31)*(149-2*300*19)/149 = 0,16 a = min(0,5;hilfs_a) = min (0,5;0,16) = 0,16 M_V,y,Rd * (1-n)/(1-0,5*a) = 435,52*(1-0,63)/(1-0,5*0,16) = 173,87 M_N,V,y,Rd = min(m_v,y,rd; M_V,y,Rd * (1-n)/(1-0,5*a))= min(435,52; 173,87) M_N,V,y,Rd = 173,87kNm M_y,Ed = 150 <= M_N,V,y,Rd = 173,87 Nachweis erfüllt

96 6 Vergleichende Berechnungen Beispiel 3: Pendelstütze Abbildung 69 Beispielrechnung 3 [L3, S. 8.25] Das Programm gibt die nachfolgenden Werte aus. Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEB 360 Festigkeitswerte: f_y = 23,5 kn/cm²; f_u = 36 kn/cm² Querschnittsklasse: 1 Schnittgrößen (Bemessungswerte) N_Ed = 2500 kn M_y,Ed = 0 knm; V_z,Ed = 0 kn M_z,Ed = 0 knm; V_y,Ed = 0 kn Stabilitätsnachweis - Knicken Profil: HEB 360 QK: 1 Festigkeit: S235 Länge des Stabes l [cm] =450 Knicklängenbeiwert beta =1 L_cr = beta * L = 1 * 450 = 450,00 N_cr = PI^2 * E * Iz / L_cr^2 = PI^2 * * 10140/450,00^2 = ,44 lambda = Wurzel(A*fy/Ncr) = Wurzel(181*23,5/10.378,44) = 0,64 KSL c --> alpha = 0,49 fi = 0.5*(1+alpha*(lambda-0.2)+lambda^2) = 0.5*(1+0,49*(0,64-0.2)+0,64^2) = 0,81 chi = 1/(fi+Wurzel(fi^2-lambda^2)) = 1/(0,81+Wurzel(0,81^2-0,64^2)) <=1 --> chi = 0,76 NbRd = chi*a*fy/gamma_m1 = 0,76*181*23,5/1.1 = 2.943,87 N/N_b,Rd = 2500/2.943,87 = 0,85 <=1 Nachweis erfüllt

97 6 Vergleichende Berechnungen Beispiel 4: BDK Einfeldträger Abbildung 70 Beispielrechnung 4 [L3, S. 8.38] Ergebnisse aus Nachweisführung nach EN 1993 Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: IPE 400 Festigkeitswerte: f_y = 23,5 kn/cm²; f_u = 36 kn/cm² Querschnittsklasse: 1 Schnittgrößen (Bemessungswerte) N_Ed = 0 kn M_y,Ed = 112,5 knm; V_z,Ed = 0 kn M_z,Ed = 0 knm; V_y,Ed = 0 kn

98 6 Vergleichende Berechnungen -92- Biegedrillknicknachweis für Stäbe mit einachsiger Biegung (ohne Normalkraft) Profil: IPE 400 QK: 1 Festigkeit: S235 M_cr [kncm] = 18601,84 kc = 0,94 h/b = 400/180 = 2,22 > > KSL c --> alpha = 0,49 QK 1 -> W = W_pl = 1307 cm^3 lambda_lt = Wurzel(W_y*f_y/M_cr) = Wurzel(1307 * 23,5 / 18601,84) = 1,28 fi_lt = 0.5*(1+alpha_LT*(lambda_LT-0.4)+0.75*lambda_LT^2) = 0.5*(1+0,49*(1,28-0.4)+0.75*1,28^2) = 1,34 Chi = 1/(fi_LT+Wurzel(fi_LT^2-0.75*lambda^2)) = 1/(1,34Wurzel(1,34^2-0.75*1,28^2)) Chi = 0,48 Um die Momentenverteilung zwischen den seitlichen Lagerungen von Bauteilen zu berücksichtigen, darf Chi modifiziert werden f = 1-0.5*(1-kc)*(1-2.0*(lambda-0.8)^2) = 1-0.5*(1-0,94)*(1-2.0*(1,28-0.8)^2) f = 0,98 Chi_mod = Chi/f = 0,48/0,98 Chi_mod = 0,49 M_b,Rd = Chi_mod * W * fy / gamma_m1 = 0,49 * 1307 * 23,5/1.1 = ,92 kncm M_y / M_b,Rd = 112,5 * 100 / ,92 = 0,82 <= 1,0 Nachweis erfüllt

99 6 Vergleichende Berechnungen Beispiel 5: Fassadenstütze mit Biegebeanspruchung Abbildung 71 Beispielrechnung 5 [L3, S. 8.41]

100 6 Vergleichende Berechnungen -94- Nachweisführung von Stahlträgern nach DIN EN 1993 gewähltes Profil: HEA 200 Festigkeitswerte: f_y = 23,5 kn/cm²; f_u = 36 kn/cm² Querschnittsklasse: 1 Profilmaße und statische Werte h = 190 mm; b = 200 mm; s = 6,5 mm; t = 10 mm; r = 18 mm A = 53,8 cm²; A_vy = 40 cm²; A_vz = 18,1 cm²; A_w = 11,05 cm² I_y = 3690 cm^4; W_el,y = 389 cm³; W_pl,y = 429,5 cm³; i_y = 8,28 cm I_z = 1340 cm^4; W_el,z = 134 cm³; W_pl,z = 203,8 cm³; i_z = 4,98 cm Schnittgrößen (Bemessungswerte) N_Ed = 300 kn M_y,Ed = 32 knm; V_z,Ed = 0 kn M_z,Ed = 0 knm; V_y,Ed = 0 kn Nachweis eines auf Biegung und Druck beanspruchten Stabes N_Rk = f_y * A = 23,5 * 53,8 = 1.264,30 kn M_y,Rk = f_y * W_pl,y = 23,5 * 429,5 = ,25 kncm M_z,Rk = f_y * W_pl,z = 23,5 * 203,8 = 4.789,30 kncm delta M_y = 0 delta M_z = 0 C_my =0,95 C_mz =0 C_mLT =0,8 lambda_y =1,03 lambda_z =0,85 Chi_y =0,58 Chi_z =0,63 Chi_LT =0,88 Interaktionsbeiwerte k_yy = Cmy*(1+(lambday-0.2)*N/(Chiy*NRk/1.1)) = 0,95*(1+(1,03-0.2)*300/(0,58*1.264,30/1.1)) = 1,30<= Cmy*(1+0.8*N/(Chiy*NRk/1.1)) = 0,95*(1+0.8*300/(0,58*1.264,30/1.1)) = 1,29 k_yy = 1,29 k_zz = Cmz*(1+(2*lambdaz-0.6)*N/(Chiz*NRk/1.1)) = 0,00*(1+(2*0,85-0.6)*300/(0,63*1.264,30/1.1)) = 0,00<= Cmz*(1+1.4*N/(Chiz*NRk/1.1)) = 0,00*(1+1.4*300/(0,63*1.264,30/1.1)) = 0,00 k_zz = 0,00 k_yz = 0,6 * k_zz = 0,6 * 0,00 k_yz = 0,00 k_zy = 0,6 * k_yy = 0,6 * 1,29 k_zy = 0,78

101 6 Vergleichende Berechnungen -95- Nachweise: N/(Chiy*NRk/gamma_M1)+kyy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kyz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,58*1.264,30/1.1)+1,29*(32*100+0,00)/(0,88*10.093,25/1.1)+0,00*(0*100+0,00)/(4.789,30/1.1) = 0,96 <=1 N/(Chiz*NRk/gamma_M1)+kzy*(My+deltaMy)/(ChiLT*MyRk/gamma_M1)+kzz*(Mz+deltaMz)/ (MzRk/gamma_M1) = 300/(0,63*1.264,30/1.1)+0,78*(32*100+0,00)/(0,88*10.093,25/1.1)+0,00*(0*100+0,00)/(4.789,30/1.1) = 0,72 <=1 Nachweise erfüllt

102 6 Vergleichende Berechnungen Vergleich der Ergebnisse Das Diagramm zeigt eine Gegenüberstellung von den Ergebnissen der Beispiele aus [L3] und den Ergebnissen aus dem erstellten Programm Ausnutzung laut Literatur Ausnutzung laut Anwendung Abbildung 72 Vergleich der Beispiele Anhand des Diagramms wird deutlich, dass das Programm Ergebnisse lefert, die sehr nah an den Ergebnissen der Beispiele aus [L3] liegen. Kleine Unterschiede sind auf Rundungsfehler zurückzuführen. Lediglich im Beispiel 2 und 5.2 ist ein größerer Unterschied festzustellen. Im Beispiel 2 liegt der Unterschied an den verschiedenen Möglichkeiten M V,y,Rd zu berechnen (siehe Abbildung 73). In [L3] wird die Variante a) und im erstellten Computerprogramm wird die Variante b) genutzt. Abbildung 73 Bestimmung M v,y,rd [L3, S. 8.18] Im Beispiel 5.2 wurde der Interaktionsbeiwert k zy auf unterschiedliche Weise berechnet. Das Beispiel aus [L3] legt Tabelle 16 und das erstellte Programm legt Tabelle 15 zu Grunde.

Beispiel 1: Querschnittstragfähigkeit

Beispiel 1: Querschnittstragfähigkeit Titel: Querschnittstragfähigkeit Blatt: Seite 1 von 10 Beispiel 1: Querschnittstragfähigkeit Belastung: M y,ed = 190 knm N Ed = 700 kn V z,ed = 100 kn Material: S 235 Nachweis des Querschnitts nach DIN-EN

Mehr

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

Wintersemester Maschinenbau und Kunststofftechnik. Informatik. Tobias Wolf  Seite 1 von 29 Kapitel 2 Einführung in C++ Seite 1 von 29 C++ Zeichensatz - Buchstaben: a bis z und A bis Z. - Ziffern: 0 bis 9 - Sonderzeichen: ; :,. # + - * / % _ \! < > & ^ ~ ( ) { } [ ]? Seite 2 von 29 Höhere Elemente

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 06: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

Mehr

Studienblätter für Stahl und Holzbau

Studienblätter für Stahl und Holzbau Studienblätter für Stahl und Holzbau Kehlnähte: Nahtdicke "a": für tragende Nähte mind. 3 mm lt. EC 3 Pkt. 6.6.5.2 (2) Nahtlänge "l" : bezieht sich auf die endkraterfreie Länge für tragende Schweißnähte:

Mehr

C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue

C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen. Leibniz Universität IT Services Anja Aue C++ - Einführung in die Programmiersprache Header-Dateien und Funktionen Leibniz Universität IT Services Anja Aue Modularisierung Logische Gliederung von Programmteilen mit Hilfe von Namensräumen. Aufteilung

Mehr

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung

FACHHOCHSCHULE AUGSBURG Hochschule für Technik, Wirtschaft und Gestaltung C Sprachelemente für Übung 2 Typumwandlungen (type casts) Bei Ausdrücken, in denen Operanden mit unterschiedlichem Typ vorkommen, werden diese vom Compiler vor der Ausführung automatisch in einen gemeinsamen

Mehr

EC3 Seminar Teil 3 1/6 Ausnutzung plastischer Reserven im Querschnitt

EC3 Seminar Teil 3 1/6 Ausnutzung plastischer Reserven im Querschnitt EC3 Seminar Teil 3 1/6 Aufgabe 1 400 mm 84 0 mm 84 t f =8 t w =6 t w =6 S 35 500 mm y M y, Ed N x, Ed V z,ed a=??? t f =8 Gegeben ist der dargestellte geschweißte Kastenquerschnitt. a) Berechnen Sie die

Mehr

Einführung in die Programmierung Wintersemester 2011/12

Einführung in die Programmierung Wintersemester 2011/12 Einführung in die Programmierung Wintersemester 2011/12 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund : Kontrollstrukturen Inhalt Wiederholungen - while

Mehr

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML.

JavaScript. Dies ist normales HTML. Hallo Welt! Dies ist JavaScript. Wieder normales HTML. JavaScript JavaScript wird direkt in HTML-Dokumente eingebunden. Gib folgende Zeilen mit einem Texteditor (Notepad) ein: (Falls der Editor nicht gefunden wird, öffne im Browser eine Datei mit der Endung

Mehr

Angewandte Mathematik und Programmierung

Angewandte Mathematik und Programmierung Angewandte Mathematik und Programmierung Einführung in das Konzept der objektorientierten Anwendungen zu mathematischen Rechnens WS 2013/14 Operatoren Operatoren führen Aktionen mit Operanden aus. Der

Mehr

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 6 Pkt.) a) Erklären

Mehr

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. Seite 1 von 9 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 4 Pkt.) Gegeben

Mehr

Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 10 Pkt.) a) Geben

Mehr

Auftraggeber. Aufgestellt. Geprüft NRB Datum Dez Korrigiert MEB Datum April 2006

Auftraggeber. Aufgestellt. Geprüft NRB Datum Dez Korrigiert MEB Datum April 2006 Nr. OSM 4 Blatt 1 von 8 Index B Stainless Steel Valorisation Project BEMESSUNGSBEISPIEL 9 KALTVERFESTIGTES U-PROFIL UNTER BIEGUNG MIT ABGESTUFTEN, SEITLICHEN HALTERUNGEN DES DRUCKFLANSCHES, BIEGEDRILLKNICKEN

Mehr

Grundlagen von C# - 1

Grundlagen von C# - 1 Grundlagen von C# - 1 Marc Satkowski 20. November 2016 C# Kurs Gliederung 1. Über diesen Kurs 2. Benötigte Software 3. Exkurs: Architektur von.net und C# 4. Erstes Programm: Hello World Grundlegende Eigenschaften

Mehr

Unterlagen. CPP-Uebungen-08/

Unterlagen.  CPP-Uebungen-08/ Unterlagen http://projects.eml.org/bcb/people/ralph/ CPP-Uebungen-08/ http://www.katjawegner.de/lectures.html Kommentare in C++ #include /* Dies ist ein langer Kommentar, der über zwei Zeilen

Mehr

Einführung in die Programmierung

Einführung in die Programmierung : Inhalt Einführung in die Programmierung Wintersemester 2017/18 Prof. Dr. Günter Rudolph Lehrstuhl für Algorithm Engineering Fakultät für Informatik TU Dortmund Wiederholungen - while - do-while - for

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Java Anweisungen und Ablaufsteuerung

Java Anweisungen und Ablaufsteuerung Informatik 1 für Nebenfachstudierende Grundmodul Java Anweisungen und Ablaufsteuerung Kai-Steffen Hielscher Folienversion: 24. Januar 2017 Informatik 7 Rechnernetze und Kommunikationssysteme Inhaltsübersicht

Mehr

Stahl bau-praxis nach Eurocode 3

Stahl bau-praxis nach Eurocode 3 Prof. Dr.-Ing. Gerd Wagenknecht Stahl bau-praxis nach Eurocode 3 ~ Mit CD-ROM Band 1 Tragwerksplanung Grundlagen 4., vollständig überarbeitete Auflage Beuth Verlag GmbH Berlin. Wien Zürich 1 1.1 1.2 1.2.1

Mehr

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil

Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++, 1. Teil MÜNSTER Übung zur Vorlesung Wissenschaftliches Rechnen Sommersemester 2012 Auffrischung zur Programmierung in C++ 1. Teil 11. April 2012 Organisatorisches MÜNSTER Übung zur Vorlesung Wissenschaftliches

Mehr

Nachweis des Biegedrillknickens für Kragträger

Nachweis des Biegedrillknickens für Kragträger Nachweis des Biegedrillknickens für Kragträger 1. Allgemeines Nach DIN 18800 Teil dürfen die Stabilitätsfälle Biegeknicken und Biegedrillknicken getrennt untersucht werden. Bei dieser Vorgehensweise sind

Mehr

Klausur: Informatik, am 11. Juli 2013 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Informatik, am 11. Juli 2013 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Was liefert

Mehr

Pseudo-Programmiersprache

Pseudo-Programmiersprache 1 Erste Schritte in C++ 4 Beschreibungsmöglichkeiten für Algorithmen Struktogramm Das gezeigte Struktogramm enthält die elementaren Grundstrukturen Folge, Auswahl und Schleife. Diese werden in einem der

Mehr

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff.

Gedächtnis. Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet. Zugriff. Gedächtnis Während der Abarbeitung eines Algorithmus müssen sich Dinge gemerkt werden bzw. auf Dingen wird gerechnet Hauptspeicher 38265 Telefon CPU Gedächtnis Vorlesender Zugriff Verarbeitungseinheit

Mehr

Javakurs für Anfänger

Javakurs für Anfänger Javakurs für Anfänger Einheit 04: Einführung in Kontrollstrukturen Lorenz Schauer Lehrstuhl für Mobile und Verteilte Systeme Heutige Agenda 1. Teil: Einführung in Kontrollstrukturen 3 Grundstrukturen von

Mehr

Übungen zur Vorlesung Wissenschaftliches Rechnen I

Übungen zur Vorlesung Wissenschaftliches Rechnen I Übungen zur Vorlesung Wissenschaftliches Rechnen I Nicolas Gauger, René Lamour, Hella Rabus Wintersemester 2007/2008 Programmierung - Einführung Programmierung - Einführung Berechnung einer Formel y =

Mehr

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8

Java 8. Elmar Fuchs Grundlagen Programmierung. 1. Ausgabe, Oktober 2014 JAV8 Java 8 Elmar Fuchs Grundlagen Programmierung 1. Ausgabe, Oktober 2014 JAV8 5 Java 8 - Grundlagen Programmierung 5 Kontrollstrukturen In diesem Kapitel erfahren Sie wie Sie die Ausführung von von Bedingungen

Mehr

Programmiervorkurs Einführung in Java Tag 1

Programmiervorkurs Einführung in Java Tag 1 Programmiervorkurs Einführung in Java Tag 1 Sebastian Glutsch SS 2018 namen Inhaltsübersicht Vorkurs Tag 1:,, en,, Einführung Tag 2: Boolesche Ausdrücke,, If-Abfragen, Switch-Case Tag 3: Arrays, (Do-)While-Schleife,

Mehr

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Gruppe: A Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. Seite 1 von 9 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 12 Pkt.) Was liefert

Mehr

5. Elementare Befehle und Struktogramme

5. Elementare Befehle und Struktogramme 5. Elementare Befehle und Struktogramme Programmablauf Beschreibung des Programmablaufs mittel grafischer Symbole Beispiel : Flussdiagramme ja nein Besser : Struktogramme Dr. Norbert Spangler / Grundlagen

Mehr

2. Die Stahlsorten-Symbolysierung nach Eurocode im Format S--- J--- Z--. Geben Sie 3 verschiedene Beispiele an und erklären Sie diese Symbole.

2. Die Stahlsorten-Symbolysierung nach Eurocode im Format S--- J--- Z--. Geben Sie 3 verschiedene Beispiele an und erklären Sie diese Symbole. STAHLBAU 1. Die allgemeine Spannungs-Dehnungs-Diagramm für Baustahl. Beschreiben Sie die charakteristischen Punkte und machen Sie einen Vergleich zw. Einem milden Stahl und einem Stahl ohne Fließebene.

Mehr

2 Programmieren in Java I noch ohne Nachbearbeitung

2 Programmieren in Java I noch ohne Nachbearbeitung 1 2 Programmieren in Java I noch ohne Nachbearbeitung 2.1 Was sind Programme? Eingabe = Verarbeitung = Ausgabe Die Eingabe kann sein Konstanten im Quelltext; Kommandozeilenparameter oder interaktive Eingabe

Mehr

NACHWEIS AUSREICHENDER QUERSCHNITTS-

NACHWEIS AUSREICHENDER QUERSCHNITTS- Rolf Kindmann Henning Uphoff NACHWEIS AUSREICHENDER QUERSCHNITTS- TRAGFÄHIGKEIT NACH DER PLASTIZITÄTS- THEORIE Entwurf vom 05.06.2014 Veröffentlichung des Lehrstuhls für Stahl-, Holz- und Leichtbau Univ.-Prof.

Mehr

Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik

Klausur: Grundlagen der Informatik I, am 05. Februar 2008 Dirk Seeber, h_da, Fb Informatik Seite 1 von 8 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Für eine

Mehr

Bemessung von nichtrostenden Stählen

Bemessung von nichtrostenden Stählen Bemessung von nichtrostenden Stählen Beispiel : Quadratisches Rechteckhohlprofil unter Stand 16.0.018 Bemessungshilfen zu nichtrostenden Stählen im Bauwesen (DMSSS) - Erläuterungen - Bemessungsbeispiele

Mehr

Algorithmen und ihre Programmierung

Algorithmen und ihre Programmierung Veranstaltung Pr.-Nr.: 101023 Algorithmen und ihre Programmierung Veronika Waue WS 07/08 Einführung Definition: Algorithmus Ein Algorithmus ist eine genau definierte Folge von Anweisungen zur Lösung eines

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Anweisungen mit Variablen Wiederholung Deklaration

Mehr

JAVA-Datentypen und deren Wertebereich

JAVA-Datentypen und deren Wertebereich Folge 8 Variablen & Operatoren JAVA 8.1 Variablen JAVA nutzt zum Ablegen (Zwischenspeichern) von Daten Variablen. (Dies funktioniert wie beim Taschenrechner. Dort können Sie mit der Taste eine Zahl zwischenspeichern).

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)

Mehr

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff

Programmieren in C. Eine Einführung in die Programmiersprache C. Prof. Dr. Nikolaus Wulff Programmieren in C Eine Einführung in die Programmiersprache C Prof. Dr. Nikolaus Wulff Agenda Elementare Einführung C Programm Syntax Datentypen, Variablen und Konstanten Operatoren und Ausdrücke Kontrollstrukturen

Mehr

Kontrollstrukturen -- Schleifen und Wiederholungen

Kontrollstrukturen -- Schleifen und Wiederholungen Kontrollstrukturen -- Schleifen und Wiederholungen Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14

Mehr

Kontrollstrukturen und Logik

Kontrollstrukturen und Logik Programmieren mit Java Modul 2 Kontrollstrukturen und Logik Theorieteil Inhaltsverzeichnis 1 Modulübersicht 3 1.1 Anweisungen und Blöcke........................... 3 2 Operatoren (Teil II) 4 2.1 Relationale

Mehr

Programmieren in C/C++ und MATLAB

Programmieren in C/C++ und MATLAB Programmieren in C/C++ und MATLAB Sven Willert Sabine Schmidt Christian-Albrechts-Universität zu Kiel CAU 4-1 Übung 1) Schreiben Sie ein Programm, das die Fläche unter einer Parabel, also das Integral

Mehr

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1

Arbeitsblätter für die Lehrveranstaltung OOP JAVA 1 Fachhochschule Stralsund Fachbereich Maschinenbau Lehrgebiet Informatik Prof. Dr.-Ing. Ch.Wahmkow Arbeitsblätter für die Lehrveranstaltung OOP I. Aufbau eines Java-Programmes JAVA 1 Escape-Sequenzen zur

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Wiederholung So sieht ein leeres Java-Programm aus public class Programmname { public static void main (String[] args) { // Hier stehen die Anweisungen Wiederholung Anweisungen durch Methodenaufrufe Ausgabe

Mehr

Hochschule Darmstadt Informatik-Praktikum SS 2018 EIT Bachelor 3. Aufgabenblatt Funktionen - Unterprogramme

Hochschule Darmstadt Informatik-Praktikum SS 2018 EIT Bachelor 3. Aufgabenblatt Funktionen - Unterprogramme Ziel ist die Aufteilung eines Programms in Funktionen und Dateien Aufgabe 3: Diese Aufgabe ist die Weiterentwicklung von Aufgabe 2. Es ist ein Programm zu erstellen, in welchem der Anwender aus einer Anzahl

Mehr

Grundlagen der Programmentwicklung

Grundlagen der Programmentwicklung Informatik für Elektrotechnik und Informationstechnik Benedict Reuschling benedict.reuschling@h-da.de Hochschule Darmstadt Fachbereich Informatik WS 2013/14 Über C++ Über C++ C++ ist eine in der Industrie

Mehr

Klausur: Informatik, am 11. Juli 2013 Gruppe: B Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Informatik, am 11. Juli 2013 Gruppe: B Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 6 Pkt.) a) Geben

Mehr

PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy

PROCESSING EINE ZUSAMMENFASSUNG. Created by Michael Kirsch & Beat Rossmy PROCESSING EINE ZUSAMMENFASSUNG Created by Michael Kirsch & Beat Rossmy INHALT 1. Typen und Operatoren 1. Datentypen 3. Klassen und Objekte 1. Klassen und Objekte 2. Operatoren 2. Konstruktor 3. Typkonversion

Mehr

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt

7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 7. Einführung in C++ Programmieren / Algorithmen und Datenstrukturen 1 Prof. Dr. Bernhard Humm FB Informatik, Hochschule Darmstadt 1 Kontrollfragen Rekursion Was bedeutet Rekursion? Geben Sie Beispiele

Mehr

Anlage Formelzeichen im Eurocode Griechische Buchstaben

Anlage Formelzeichen im Eurocode Griechische Buchstaben Prof. Dr.-Ing. Dirk Werner A1-19 Anlage 1.3 - Formelzeichen im Eurocode Griechische Buchstaben In den EN Normen für die Tragwerksplanung und speziell für den Stahlbau werden, soweit möglich, einheitliche

Mehr

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue

Java - Schleifen. Bedingung. wiederhole. Anweisung Anweisung Anweisung. Leibniz Universität IT Services Anja Aue Java - Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Anweisung int zahl; zahl = 2; zahl = zahl * 10; int zahl; ; Jede Anweisung endet mit einem

Mehr

Seite neu erstellt März 2012 Kontakt Programmübersicht Bestellformular

Seite neu erstellt März 2012 Kontakt Programmübersicht Bestellformular Seite neu erstellt März 2012 Kontakt Programmübersicht Bestellformular Infos auf dieser Seite... als pdf Nachweise/Profildaten... Bemessungsschnittgrößen... System... Ausnutzungen... grafische Darstellung...

Mehr

Intensivübung zu Algorithmen und Datenstrukturen

Intensivübung zu Algorithmen und Datenstrukturen Intensivübung zu Algorithmen und Datenstrukturen Silvia Schreier Informatik 2 Programmiersysteme Martensstraße 3 91058 Erlangen Übersicht Programmierung Fallunterscheidung Flussdiagramm Bedingungen Boolesche

Mehr

Informatik I - Einstiegskurs

Informatik I - Einstiegskurs Informatik I - Einstiegskurs Dr. Henrik Brosenne Georg-August-Universität Göttingen Institut für Informatik Basiert auf dem Einstiegskurs im Wintersemester 2009/10 von Markus Osterhoff Wintersemester 2012/13

Mehr

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen

C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen C# - Einführung in die Programmiersprache Bedingte Anweisungen und Schleifen Gehe nach links oder rechts Gehe solange geradeaus... Leibniz Universität IT Services Anja Aue Programmabläufe grafisch abbilden

Mehr

Grundlegende Programmstrukturen sind Sequenzen, Schleifen und Entscheidungen.

Grundlegende Programmstrukturen sind Sequenzen, Schleifen und Entscheidungen. Grundlegende Programmstrukturen Seite 1 von 14 Grundlegende Programmstrukturen sind Sequenzen, Schleifen und Entscheidungen. Sequenzen Eine Sequenz ist eine Folge von en (sblock) ohne Verzweigungen. Der

Mehr

Algorithmen zur Datenanalyse in C++

Algorithmen zur Datenanalyse in C++ Algorithmen zur Datenanalyse in C++ Hartmut Stadie 16.04.2012 Algorithmen zur Datenanalyse in C++ Hartmut Stadie 1/ 39 Einführung Datentypen Operatoren Anweisungssyntax Algorithmen zur Datenanalyse in

Mehr

4 Formelsammlung C/C++

4 Formelsammlung C/C++ 4 Formelsammlung C/C++ 4.1 Datentypen Datentyp stdint.h type Bits Sign Wertebereich (unsigned) char uint8_t 8 Unsigned 0.. 255 signed char int8_t 8 Signed -128.. 127 unsigned short uint16_t 16 Unsigned

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java 1 / 41 Einstieg in die Informatik mit Java Weitere Anweisungen Gerd Bohlender Institut für Angewandte und Numerische Mathematik Gliederung 2 / 41 1 Überblick 2 Verbundanweisung 3 Bedingte Anweisung 4 Auswahlanweisung

Mehr

Institut für Computational Science Prof. Dr. H. Hinterberger. Praxismodul 1. Einführung in die Programmierung Erste Programme

Institut für Computational Science Prof. Dr. H. Hinterberger. Praxismodul 1. Einführung in die Programmierung Erste Programme Institut für Computational Science Prof. Dr. H. Hinterberger Praxismodul 1 Einführung in die Programmierung Erste Programme Einführung in die Programmierung 2 Institut für Computational Science, ETH Zürich,

Mehr

Klausur: Grundlagen der Informatik I, am 27. März 2009 Gruppe: F Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.

Klausur: Grundlagen der Informatik I, am 27. März 2009 Gruppe: F Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr. Seite 1 von 9 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 15 Pkt.) Was liefert

Mehr

Leichtbau ist nicht schwer

Leichtbau ist nicht schwer Leichtbau ist nicht schwer Dünnwandige Stahl und Aluminiumprofile in einem Schritt nachweisen Nach Einführung der Eurocode Normenfamilie müssen Tragwerke mit kaltgeformten, dünnwandigen Bauteilen und Wandstärken

Mehr

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 2 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 2 SS 2016

Mehr

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems 4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um

Mehr

2 Teil 2: Nassi-Schneiderman

2 Teil 2: Nassi-Schneiderman 2 Teil 2: Nassi-Schneiderman Wie kann man Nassi-Schneiderman in einer objektorientierten Sprache verwenden? Jedes Objekt besitzt Methoden, welche die Attribute des Objektes verändern. Das Verhalten der

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)

Mehr

RO-Tutorien 15 und 16

RO-Tutorien 15 und 16 Tutorien zur Vorlesung Rechnerorganisation Tutorienwoche 2 am 04.05.2011 1 Christian A. Mandery: KIT Universität des Landes Baden-Württemberg und nationales Grossforschungszentrum in der Helmholtz-Gemeinschaft

Mehr

C++ - Einführung in die Programmiersprache Schleifen

C++ - Einführung in die Programmiersprache Schleifen C++ - Einführung in die Programmiersprache Schleifen Bedingung wiederhole ja Anweisung Anweisung Anweisung Leibniz Universität IT Services Anja Aue Schleifen Iterationsanweisungen. Wiederholung von Anweisungsblöcken.

Mehr

Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe

Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe Informatik Vorlesung 03b Wiederholung, Abbruch von Schleifen, switch-anweisung Datentypen, char, formatierte Ausgabe 12. November 2018 WiSe 2018 FB Ing - SB Umwelttechnik und Dienstleistung - Informatik

Mehr

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems

Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems 4. Algorithmen Motivation Algorithmen als systematische Vorgehensweisen zur Lösung eines formal definierten Problems Der Begriff Algorithmus geht auf den Gelehrten Muhammad al-chwarizmi zurück, der um

Mehr

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben.

Übungen zur Vorlesung Wissenschaftliches Rechnen I. Grundelemente von Java. Eine Anweisung. wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Eine Anweisung wird mit dem Wertzuweisungsoperator = geschrieben. Daher ist y = x + 5.6; keine Gleichung, sondern die Anweisung den Wert

Mehr

4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen

4.2 Gleitkommazahlen. Der Speicherbedarf (in Bits) ist üblicherweise. In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen . Gleitkommazahlen In vielen Anwendungen benötigt man gebrochene Werte. Physikalische Größen Umrechnen von Einheiten und Währungen Jede Zahl x Q mit x 0 lässt sich folgendermaßen schreiben: x = s m e mit

Mehr

Klausur: Informatik I am 06. Februar 2009 Gruppe: D Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Informatik I am 06. Februar 2009 Gruppe: D Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 12 Pkt.) Was liefert

Mehr

Ausdrücke (1) Grundlegende Eigenschaften

Ausdrücke (1) Grundlegende Eigenschaften Ausdrücke () Grundlegende Eigenschaften bestehen aus Literalen, Konstanten, Variablen und Operatoren einfachster Ausdruck ist das Semikolon, es bewirkt nichts. Ausdrücke werden mit einem Semikolon abgeschlossen.

Mehr

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen

Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen Das diesem Dokument zugrundeliegende Vorhaben wurde mit Mitteln des Bundesministeriums für Bildung und Forschung unter dem Förderkennzeichen 16OH21005 gefördert. Die Verantwortung für den Inhalt dieser

Mehr

(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49)

(Aufgaben zu Wertzuweisungen siehe Vorlesungsbeilage S. 49) Anweisungen Eine Anweisung ist eine in einer beliebigen Programmiersprache abgefaßte Arbeitsvorschrift für einen Computer. Jedes Programm besteht aus einer bestimmten Anzahl von Anweisungen. Wir unterscheiden

Mehr

1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster

1 Aufgaben 1.1 Objektorientiert: (extended-hamster) Sammel-Hamster 1 Aufgaben 1.1 Objektorientiert: ("extended-hamster") Sammel-Hamster Aufgabe: Bearbeitungszeit: ca. 1/4 Std) Schreiben Sie ein "objektorientiertes" Programm ("CuB_05_1") für das Sammeln der Körner. Aufgabenbeschreibung:

Mehr

1.8.5 Wiederholungen. Beispiele Unendliche Schleife: 1.8 Kontrollstrukturen 75. ( Bedingung ) AnweisungOderBlock. ja Anweisung. Bedingung erfüllt?

1.8.5 Wiederholungen. Beispiele Unendliche Schleife: 1.8 Kontrollstrukturen 75. ( Bedingung ) AnweisungOderBlock. ja Anweisung. Bedingung erfüllt? 1.8 Kontrollstrukturen 75 1.8.5 Wiederholungen Häufig muss die gleiche Teilaufgabe oft wiederholt werden. Denken Sie nur an die Summation von Tabellenspalten in der Buchführung oder an das Suchen einer

Mehr

Das Webinar beginnt in Kürze!

Das Webinar beginnt in Kürze! Das Webinar beginnt in Kürze! Veranstalter Das Audiosignal des Webinars können Sie über Ihre Computerlautsprecher mithören. Mit freundlicher Unterstützung von Bitte vergewissern Sie sich, dass die Lautsprecher

Mehr

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1

Modul Entscheidungsunterstützung in der Logistik. Einführung in die Programmierung mit C++ Übung 1 Fakultät Verkehrswissenschaften Friedrich List, Professur für Verkehrsbetriebslehre und Logistik Modul Entscheidungsunterstützung in der Logistik Einführung in die Programmierung mit C++ Übung 1 SS 2016

Mehr

Bachelorarbeit. Brandschutznachweise im Stahl- und Stahlverbundbau nach Eurocode. (Zusammenfassung) Aufgabensteller: Prof. Dr. Ing.

Bachelorarbeit. Brandschutznachweise im Stahl- und Stahlverbundbau nach Eurocode. (Zusammenfassung) Aufgabensteller: Prof. Dr. Ing. Bachelorarbeit Brandschutznachweise im Stahl- und Stahlverbundbau nach Eurocode (Zusammenfassung) Aufgabensteller: Prof. Dr. Ing. Othmar Springer Bearbeiter: Martin Paulus September 2010 Seite 1 Einführung:

Mehr

Projekt 3 Variablen und Operatoren

Projekt 3 Variablen und Operatoren Projekt 3 Variablen und Operatoren Praktisch jedes Programm verarbeitet Daten. Um mit Daten programmieren zu können, muss es Möglichkeiten geben, die Daten in einem Programm zu verwalten und zu manipulieren.

Mehr

2. Programmierung in C

2. Programmierung in C 2. Programmierung in C Inhalt: Überblick über Programmiersprachen, Allgemeines zur Sprache C C: Basisdatentypen, Variablen, Konstanten, Operatoren und Ausdrücke Anweisungen und Kontrollstrukturen (Steuerfluss)

Mehr

Martin Unold INFORMATIK. Geoinformatik und Vermessung

Martin Unold INFORMATIK. Geoinformatik und Vermessung Zusammenfassung Was ist eine Programmiersprache? Eine Sprache, die Formal eindeutig in Maschinenbefehle übersetzbar ist Für Menschen einfacher verständlich ist als Bytecode Zur Formulierung von Datenstrukturen

Mehr

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

Einführung in die C++ Programmierung für Ingenieure Einführung in die C++ Programmierung für Ingenieure MATTHIAS WALTER / JENS KLUNKER Universität Rostock, Lehrstuhl für Modellierung und Simulation 14. November 2012 c 2012 UNIVERSITÄT ROSTOCK FACULTY OF

Mehr

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte:

Klausur: Grundlagen der Informatik I, am 06. Februar 2009 Dirk Seeber, h_da, Fb Informatik. Nachname: Vorname: Matr.-Nr.: Punkte: Seite 1 von 10 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 10 Pkt.) a) Wer

Mehr

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik

Nachklausur: Grundlagen der Informatik I, am 02. April 2008 Dirk Seeber, h_da, Fb Informatik Seite 1 von 7 Hiermit bestätige ich, dass ich die Übungsleistungen als Voraussetzung für diese Klausur in folgender Übung erfüllt habe. Jahr: Übungsleiter: Unterschrift: 1. Aufgabe ( / 4 Pkt.) Gegeben

Mehr

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme?

Inhaltsverzeichnis. Kapitel i: Schnelleinstieg 13. Kapitel 2: Was sind Programme? 17. Kapitel 3: Wie erstellt man eigene Programme? Liebe Leserin, lieber Leser 10 Kapitel i: Schnelleinstieg 13 Kapitel 2: Was sind Programme? 17 Was ist ein Programm? 18 Sprechen Sie Computer? 18 Von der Idee zum Programm 19 Von Windows, Fenstern und

Mehr

Einstieg in die Informatik mit Java

Einstieg in die Informatik mit Java Vorlesung vom 25.4.07, Anweisungen Übersicht 1 Ausdrucksanweisung 2 Einfache Ausgabeanweisung 3 Einfache Eingabeanweisung, Vorbereitungen 4 Verbundanweisung 5 Bedingte Anweisung 6 Auswahlanweisung 7 for

Mehr