C++ leren voor de informatica olympiade
  • 💃Intro
  • Leer de basis van programmeren
    • 1. Programmeren, hoe te beginnen?
    • 2. Variabelen
    • 3. Keuze
    • 4. Herhalingen
    • 👓Code lezen
    • 5. String
    • 6. Boolean
  • Leer meer C++
    • 7. Functies - deel 1
    • 8. Array/vector
    • 9. 2D vector
    • 10. Functies - deel 2
  • 11. Recursie
  • 💻C++ en Visual Studio Code
  • Leer competitief programmeren
    • 12. Complete search
    • 13. Gegevens sorteren en zoeken
    • 14. Grafen
    • 15. Dynamisch programmeren
Powered by GitBook
On this page
  1. Leer de basis van programmeren

5. String

PreviousCode lezenNext6. Boolean

Last updated 5 days ago

In het eerste hoofdstuk heb je het datatype string al eerder gezien. In dit hoofdstuk ga je nog meer leren over strings. Variabelen van het type string bevatten stukken tekst. Er worden aanhalingstekens " " gebruikt om het begin en einde van een stuk tekst aan te geven. Een voorbeeld:

#include <iostream>
using namespace std;

int main(){
  string zin = "Programmeren is leuk";
  cout << zin << endl;
  cout << "Het aantal letters in de zin is: " << zin.length();
  return 0;
}

Je kan een string zien als een array met karakters:

De string start bij index 0. Je kan een specifieke letter in een string opvragen met de vierkante haken [ ].

De eerste letter uit de zin kan je selecteren met: cout << zin[0];

De tweede letter kan je selecteren met: cout << zin[1];

Een manier om letter voor letter de string te doorlopen is:

string zin = "Voorbeeld";
for (char element:zin){
     cout << element << endl;
}

Opdracht 5.1 Schrijf een programma dat een zin inleest en als uitvoer de zin achterstevoren afdrukt. Bijvoorbeeld: Invoer: aardbei Uitvoer: iebdraa

Het commando cin leest alles in wat de gebruiker typt tot de spatie. Met strings wil je soms ook de spatie inlezen, dit kan met de code: getline (cin, variabele_naam);

Met de operator + kan je 2 of meerdere strings samenvoegen. Bijvoorbeeld: voornaam = "Noor"; achternaam = "Vis"; volledigenaam = voornaam + " " + achternaam

Opdracht 5.4 Probeer onderstaande code uit. Kun je het verschil verklaren?

#include <string>
#include <iostream>
using namespace std;

int main(){
  string string1 = "10";
  string string2 = "10";
  cout << string1 + string2 << endl;
  int int1 = 10;
  int int2 = 10;
  cout << int1 + int2 << endl;
  return 0;
}

Char

Char is het datatype voor een enkel teken. Dit teken staat tussen enkele aanhalingstekens ' '. Bijvoorbeeld: char letter= 'A';

Elk teken kan vertaald worden naar een getal, door middel van unicode. Unicode is een internationale standaard voor de codering tussen tekens/symbolen en getallen.

Hieronder de decimale waardes van ons alfabet:

Van deze standaard codering kunnen we gebruik van maken in C++. Hieronder een aantal voorbeelden: int nummer = 'a'; -> nummer krijgt hier de waarde 97. char letter = 115; -> letter krijgt hier de waarde 's'. char letter = 'a' + 2; -> letter krijgt hier de waarde 'c'.

Opdracht 5.5 Wat is het resultaat als we de code 'z' + 2 uitvoeren? Probeer deze code uit maar denk eerst zelf na welke waarde je verwacht.

Opdracht 5.6 Je hebt een geheim bericht ontvangen van een vriendin. string bericht = "Ln#ndq#surjudpphuhq#lq#F.."; Gelukkig hebben jullie van te voren afgesproken hoe jullie het bericht gingen versleutelen. Je vriendin heeft alle letters 3 posities in de unicode-tabel opgeschoven. Dus de a is een d geworden, de b een e, de c een f etc. Schrijf een programma dat dit bericht terug vertaald naar het originele bericht.

Opdracht 5.2 Maak onderstaande beveropgave. Met de volgende link kan je testen of je programma werkt: .

Opdracht 5.3 Maak onderstaande beveropgave. Met de volgende link kan je testen of je programma werkt: .

Opdracht 5.7 Schrijf een programma dat een woord inleest. Het woord bestaat uit minstens 1, hoogstens 30 letters, geschreven in kleine letters, zonder leestekens of spaties. Het programma schrijft als uitvoer een regel met daarop het aantal verschillende letters in dat woord. Voorbeeld Invoer: aardappelsalade Uitvoer: 7 Met de volgende link kan je testen of je programma werkt: .

Moeren en Bouten
Naaimachine
unieke letters inleveren