Obliczenie ilości spacji w podamym tekście. Podręcznik, str. 104, ćw. 4, p.3

Opis programu:

  • Program liczy ilość spacji w podanym tekście .... czyli nie do końca to, o co chodzi w ćwiczeniu :)
  • Aby uzyskać ilość znaków różnych od spacji wystarczy wykonać odejmowanie: ilość_wszystkich_znaków - ilość_spacji.
  • Przykładowy kod programu jest w kilku wersjach. Ostatnia z nich przedstawia realizację poniższego algorytmu z pominięciem zmiennej znak.

Schemat algorytmu:

alg ilosc znaku w tekscie

Przykładowy kod programu:

/*Program sprawdzający ilość spacji w podanym tekście*/
#include <iostream>
using namespace std;

int main() {
	string txt="";
	cout << "podaj tekst: "; 
	//cin >> txt --> nie wczytuje spacji;
	getline(cin,txt);
	int n = txt.length(); //długość tekstu
	int ilosc;
	cout << "\ndlugosc tekstu: " << n << endl;
	
	cout << "\nwersja programu z substr(i,1):\n";
	ilosc=0;
	for (int i=0; i<n; i++){
		if (txt.substr(i,1)==" ") ilosc++;
	}
	cout << "ilosc spacji w tekscie: " << ilosc;
	
	cout << "\n\nwersja programu z tablica znakow:\n"; 
	ilosc=0;
	for (int i=0; i<n; i++){
		if (txt[i]==' ') ilosc++;
	}
	cout << "ilosc spacji w tekscie: " << ilosc;

	cout << "\n\nwersja z substr i erase:\n";
	cout << "sprawdzamy pierwszy znak --> txt.substr(0,1) i usuwamy go z tekstu --> txt.erase(0,1) \n"; 
	ilosc=0;
	for (int i=0; i<n; i++){
		if (txt.substr(0,1)==" ") ilosc++;
		txt.erase(0,1);
	}
	cout << "ilosc spacji w tekscie: " << ilosc;	

	return 0;
}

Użycie kodu:

  • Powyższy kod można wykorzystać w środowisku Dev C++ lub innym. Wystarczy utworzyć nowy projekt i wkleić ten kod zamiast istniejącego.
  • Można też użyć kodu na jednej ze stron WWW z kompilatorami on-line, na przykład na stronie: www.cpp.sh