inleiding programmeren in c life science technology 19 januari 2004 l.
Download
Skip this Video
Download Presentation
Inleiding programmeren in C++ Life Science & Technology 19 januari 2004

Loading in 2 Seconds...

play fullscreen
1 / 24

Inleiding programmeren in C++ Life Science & Technology 19 januari 2004 - PowerPoint PPT Presentation


  • 124 Views
  • Uploaded on

Inleiding programmeren in C++ Life Science & Technology 19 januari 2004. http://www.liacs.nl/home/kosters/lst/ Universiteit Leiden. Week 1. Inhoud Introductie apparatuur, compiler (Visual C++) Eerste C++-programma's if-statement Doel

loader
I am the owner, or an agent authorized to act on behalf of the owner, of the copyrighted work described.
capcha
Download Presentation

PowerPoint Slideshow about 'Inleiding programmeren in C++ Life Science & Technology 19 januari 2004' - justine


Download Now An Image/Link below is provided (as is) to download presentation

Download Policy: Content on the Website is provided to you AS IS for your information and personal use and may not be sold / licensed / shared on other websites without getting consent from its author.While downloading, if for some reason you are not able to download a presentation, the publisher may have deleted the file from their server.


- - - - - - - - - - - - - - - - - - - - - - - - - - E N D - - - - - - - - - - - - - - - - - - - - - - - - - -
Presentation Transcript
inleiding programmeren in c life science technology 19 januari 2004

Inleiding programmeren in C++Life Science & Technology19 januari 2004

http://www.liacs.nl/home/kosters/lst/

Universiteit Leiden

week 1
Week 1
  • Inhoud
    • Introductie apparatuur, compiler (Visual C++)
    • Eerste C++-programma's
    • if-statement
  • Doel
    • Na afloop kan iedereen zelf een klein eigen C++-programma op de computer maken en compileren, bijvoorbeeld een programma dat een paar getallen vraagt en bij elkaar optelt
  • Materiaal
    • Ammeraal Hoofdstukken 1 en 2, tot en met 2.4
    • Dictaat Hoofdstukken 1, 2 en 3.1; opgaven 1/5 (Hoofdstuk 4)
c op een pc
C++ op een PC
  • PC’s in computerzalen LCP 6 & 8 met Windows 98/NT/XP
    • Windows 98/NT/XP (of Linux …)
    • User-id (= username = accountname)
    • Password (= wachtwoord)
  • Microsoft Visual C++ 6.0 (zie dictaat Hoofdstuk 2.1)
    • C++ programma schrijven
    • Compile, Build (Link), Execute
    • Demo …
    • Projecten
    • Save geregeld je C++-code, ook op een diskette of via email: de iets.cpp file
hardware en software
Computers

Silicon Graphics Inc.

Hewlett Packard

SUN

International Business Machines compatible Personal Computer

Operating systemen

Microsoft DOS, Windows 95/98/2000/NT/XP

Unix (Linux, Sun Solaris, IBM AIX, HP-UX)

Programmeertalen

C++

C

Pascal

Java

Basic

Prolog, …

Programma’s

Compilers (Visual C++, Turbo/Borland C++, g++)

Editors

Email

Web-browsers

Hardware en software
programma operating systeem en hardware
Programma, operating systeem en hardware

Programma

(.exe)

Programma

(.exe)

Operating Systeem

(Windows, Linux, …)

Hardware

(CPU, Randapparatuur)

van broncode naar uitvoerbaar programma
Van broncode naar uitvoerbaar programma

C++ programma

(.cpp)

Compile

&

Build

Uitvoerbaar programma

(.exe)

compile build link execute
Compile, Build (Link), Execute

C++ programma

(.cpp)

C++ programma

(.cpp)

Compile

Object file

(.obj)

Object file

(.obj)

Object file uit

Standaard library

Build (Link)

Uitvoerbaar programma

(.exe)

eerste programma
Eerste programma

#include <iostream>

using namespace std;

const double pie = 3.14159;

int main ( ) {

double straal;

cout << "Geef straal, daarna Enter: ";

cin >> straal;

if ( straal > 0 )

cout << "Oppervlakte: " << pie * straal * straal << endl;

else

cout << "Niet zo negatief..." << endl;

cout << "Einde van dit programma." << endl;

return 0;

} // main

een c programma
Een C++-programma
  • Verzameling functies
    • speciale functie main (moet er altijd zijn)
    • stuk programmatekst (met een bepaalde naam, parameters en return-waarde)
    • alles buiten een functie geldt voor gehele programma (globaal)
  • Functie bevat statements
    • min of meer afgeronde handeling
    • er zijn veel soorten statements ...
  • Statement bevat vaak een expressie
    • uitdrukking (operatie) met een bepaald resultaat
    • er zijn veel soorten expressies ...
  • En verder onder andere:
    • commentaar
commentaar
Commentaar

/* Dit is commentaar in "C-stijl"

*

* … regels lang

*/

int stp = 3; // Studiepunten voor inleiding

// programmeren

  • Let op met het nesten van commentaar … niet doen dus
  • Geef veel en duidelijk commentaar, zeker bij elke nieuwe variabele en elke nieuwe functie
  • Er is verschil tussen commentaar
    • voor de programmeur ( //...of /*...*/ )
    • en voor de gebruiker ( cout << ”...”; )
structuur goed c programma
Structuur goed C++-programma

//

// Commentaar over het programma (wie, wat, wanneer, ...)

//

//

#include ...

using namespace std;

typedefs en constanten en globale variabelen en klassen

functies

int main ( ) {

... kort ...

} // main

statements
Statements
  • Een functie bestaat uit statements
  • Statement
    • min of meer afgeronde handeling
    • meestal afgesloten met een punt-komma: ;
  • Bijvoorbeeld
    • expressie
    • declaratie van een variabele
    • conditioneel statement (if)
    • iteratief statement (while, for)
    • compound statement (meerdere statements tussen { } )
expressies
Expressies
  • Expressie
    • Bestaat uit operand(en) en operator
      • binair: operand1 operator operand2
      • unair: operand operator of operator operand
    • Een expressie levert een resultaat en kan weer operand zijn in een andere expressie
    • Bijvoorbeeld
      • rekenkundige bewerkingen: a + b, (a + b) * (3 / x),

-getal

      • toekenning: a = b + 7 (“a wordt b plus 7”)
      • relationele operatoren: a > b
      • maar ook gewoon: 4
gereserveerde woorden in c
Gereserveerde woorden in C++

break case char const default do double else

float for if int return switch void while

bool false namespace true using

asm auto catch class continue delete enum extern

friend goto inline long new operator private

protected public register short signed sizeof

static struct template this throw try typedef

union unsigned virtual volatile

constr_cast dynamic_cast explicit

mutable reinterpret_cast static_cast

typeid typename wchar_t

declaratie van een variabele
Declaratie van een variabele
  • Statement dat een variabele introduceert
    • met een bepaalde naam
    • van een bepaald type
  • Variabele moet altijd eerst worden gedeclareerd voordat deze gebruikt kan worden
  • Eventueel meteen initialiseren (verstandig!)
  • Toevoeging const: niet meer wijzigbaar na initialisatie
  • Scope: globaal of locaal
declaratie van een variabele 2
Declaratie van een variabele (2)
  • Belangrijkste typen
  • Voorbeelden

char letter, nogeen = ’X’; // gewone quotes

int leeftijd, xyz = 47;

const string tekst = ”Dit is tekst”;

float resultaat = xyz / 3.2;

toekenning
Toekenning
  • Operator = (“wordt”, “krijgt de waarde”)
    • niet verwarren met logische operator = = (test op gelijkheid)
  • Resultaat van een expressie toekennen aan een variabele
  • Let op:
    • links een variabele (“l-value”) en rechts een expressie (“r-value”)
    • resultaat van de expressie (rechts) moet overeenkomen met het type van de variabele (links)
    • pas op met impliciete typeconversies!
  • Voorbeeld

int i, j;

float x;

j = 4;

i = j * j + 5; // dus i wordt 21

x = i / j; // pas op: 21/4 is 5

relationele expressie
Relationele expressie
  • Expressie met boolese (boolean) resultaat
    • resultaat is van type bool
    • waarde 0 is niet waar (false), al het overige is waar (true)
  • Relationele en logische operatoren
if statement
If-statement
  • If : conditioneel statement van de vorm:
    • if ( expressie ) statement1 else statement2
    • waarin else statement2 optioneel is
    • en expressie een relationele expressie (waar / niet waar) is
  • Voorbeeld

if ( getal > 0 )

cout << "Positief" << endl;

if ( getal > 0 )

cout << "Positief" << endl;

else

cout << "Niet positief" << endl;

voorbeelden if statements
Voorbeelden if-statements
  • Logische “en”:
  • Altijd waar:
  • Alles ongelijk 0 is waar …

if ( x > 0 && y > 0 )

cout << "Beide getallen positief" << endl;

if ( true ) cout << “Altijd" << endl;

if ( 7 )

cout << “Altijd" << endl;

er zijn verschillende layouts mogelijk, als het maar consequent is, en uiteraard duidelijk

dangling else
“Dangling else”
  • Waar hoort de else bij?
  • Afspraak: bij de laatste nog openstaande if
  • Maar beter (want duidelijker) is: gebruik een compound statement, met extra accolades

if ( x > 0 )

if ( y > 0 )

cout << "Beide getallen positief" << endl;

else

cout << "????????????" << endl;

compound statement
Compound statement
  • Samengesteld statement
  • Meerdere statements tussen { en }

if ( x > 0 ) {

if ( y > 0 )

cout << "Beide getallen positief" << endl;

else

cout << "????????????" << endl;

} // if

if ( x != 0 ) {

a = c / x;

cout << "c / x =" << a << endl;

} // if

null statement
Null-statement
  • Null-statement
    • dit is natuurlijk hetzelfde als (en zo doe je het meestal ook):

if ( x > 0 && y > 0 )

;

else

cout << “Er is een niet-positief getal" << endl;

if ( ! ( x > 0 && y > 0 ) )

cout << “Er is een niet-positief getal" << endl;

overigens is de boolese expressie ! ( x > 0 && y > 0 ) hetzelfde als: ( x <= 0 || y <= 0 )

ad