Torsdag 30 april

Forrige gang så startet så vidt med å installere Code Blocks IDE og teste ut C++ litt i det grunnleggende.

Før vi går videre på mer avanserte oppgaver, så er det kanskje lurt jobbe litt med stoffet, slik at vi får programmeringen in i fingrene. Vi kan begynne med å følge kurset til Mike Dane og gjennomføre de øvelsene som han har lagt opp til.

Vi kan starte opp med å trene litt på de helt grunnleggende tingene og utskriftfunksjonen ved å følge kursoppleget i videoen «Drawing a shape«.

Etter å ha tenkt litt over saken så valgte jeg å legge ut programkode for det første eksempelet slik at dere kan komme rimelig hurtig i gang. Resten av programkoden kan dere forsøke å skrive selv.

 

#include <iostream>
#include <conio.h>

using namespace std;

int main()
{
    
 cout << "   /|" << endl;
 cout << "  / |" << endl;
 cout << " /  |" << endl;
 cout << "/___|" << endl;
 
 getch();
 return 0;
}

Variabler er et veldig grunleggende begrep i forhold til de fleste programmeringsspråk. Vi kan tenke på det som små «bokser» eller «beholdere» som inneholder forskjellige typer data. Videoen under har en god beskrivelse, «Variables»:

For dette eksemplet over, så er det kanskje lurt at dere forsøker å skrive hele programkoden selv, slik at dere får erfaring med alle detaljene. Dere kan godt bruke det første program-eksemplet over som et slags «rammeverk» til å jobbe ut i fra.

Nå er det ikke målet å rekke gjennom så mye som mulig, men der i mot å lære tingene så godt som mulig aller helst på en slik måte at lærestoffet framstår som «nyttig og interessant». Den enste videoen går mer i dybden på det som går på variabler og datatyper. Hvis vi rekker det, og har krefter nok, så går vi gjennom innholdet i denne videoen også. Hvis ikke så utsetter vi den til neste gang. Video: Datatypes.

Rett under så har vi et lite programeksempel som viser deklarasjon av ulike variabler. Programmet gjør ellers lite annet enn å opprette variablene:

 

#include <iostream>
#include <conio.h>

using namespace std;

int main()
{

// #include <string>
string name = "Mike";    // string of characters, not primitive
char testGrade = 'A';    // single 8-bit character.

// you can make them unsigned by adding "unsigned" prefix
short age0 = 10;         // atleast 16-bits signed integer
int age1 = 20;           // atleast 16-bits signed integer 
long age2 = 30;          // atleast 32-bits signed integer
long long age3 = 40;     // atleast 64-bits signed integer

float gpa0 = 2.5f;       // single percision floating point
double gpa1 = 3.5;       // double-precision floating point
long double gpa2 = 3.5;  // extended-precision floating point

bool isTall;             // 1 bit -> true/false
isTall = true;

name = "John";

cout << "Your name is " << name << endl;


 getch();
 return 0;
}


Arbeidsoppgaver:

  1. Spill gjennom videoene 1 og 1, i alle fall de 2 første. Skriv ned programkoden som blir beskrevet. Skriv den så inn i CodeBlocks IDE og testkjør programmene.
  2. Teorispørsmål – CodeBlocks er et «IDE». Hva er et «IDE» og hva kan et «IDE» brukes til?
  3. Teorispørsmål – Python er et «Fortolket script språk» mens C++ er et «kompilert programmeringsspråk». Hva er hovedforskjellen mellom disse to programmeringsspråkene og hva er en «tolk» eller en «fortolker» i forhold til en «kompilator»?
  4. Lag en utskrift av de programmene som du har utarbeidet og gjør den klar for innlevering, for eksempel ved å gjennomføre «copy paste» inn i et Word dokument. Svar også på de to teorispørsmålene.
  5. Hvis det er noe som dere synes er vanskelig så kan dere godt stille og formulere spørsmål i innleveringen, slik at vi kan jobbe vider med disse spørsmålene neste gang.

NOTE: I forhold til Python, som vi har arbeidet med tidligere, så ser vi at C++ stiller noe større krav til at «alle detaljer må være rett». Spesielt så gjelder det at alle variabler må «deklareres» (opprettes) og at man må bruke klammeparanteser for å fortelle kompilatoren hvilke deler av programmet som hører sammen.

Jeg la ut programkoden bare til det første eksemplet denne gangen, slik at dere kan kode det resterende selv. Det er for at dere skal legge merke til alle detaljer når dere skriver den inn på egen hånd.