string i '0'

BY
  • Rejestracja:około 11 lat
  • Ostatnio:prawie 11 lat
  • Postów:16
0

utworzcie sobie plik o nazwie dane.txt i wklejcie ta liczbe:
1334473

nie rozumiem fragmentu:
wynik = liczba[0] - '0';
wydaje mi sie ze do wyniku dopisuje wartosc 1 i odejmuje w cudzyslowie '0' tylko dlaczego? i dlaczego nie dziala samo
wynik = liczba[0]
z tego calego kodu nie jestem w stanie pojac, jakies pomysly?

Kopiuj
 #include <fstream>
#include <iostream>

int pobierzOstatniaCyfre (int liczba)
{
	return liczba % 10;
}

int pobierzPierwszaCyfre (int liczba)
{
	while (liczba >= 10)
	{
		liczba = liczba / 10;
	}
	return liczba;
}

int main(){
	
	using namespace std;
	ifstream inFile;
	ofstream outFile;
	inFile.open("dane.txt");
	outFile.open("wynik6b.txt");
	
	int licznik = 0, wynik = 0;
	string liczba;
	
	while (inFile >> liczba)
	{
		wynik = liczba[0] - '0';
		cout << wynik << endl;
		for (int i = 1; i < liczba.size(); i++)
		{
			wynik = wynik * 8 + liczba[i] - '0';
			cout << wynik << endl;
		} 
		exit(0);
		if (pobierzOstatniaCyfre(wynik) == pobierzPierwszaCyfre(wynik))
		licznik++;
	}
	
	outFile << licznik;
	
	inFile.close();
	outFile.close();
}
n0name_l
Hm... wydaje mi sie, ze calkiem niedawno wrzucalem 1-linijkowca do zrobienia tego, ktory ma choc troche sensu...
KA
przez ostatnie dni był zalew tego typu zadań. jutro matura pp i pr z informatyki...
Patryk27
Moderator
  • Rejestracja:ponad 17 lat
  • Ostatnio:prawie 2 lata
  • Lokalizacja:Wrocław
  • Postów:13042
0

_13th_Dragon
  • Rejestracja:prawie 20 lat
  • Ostatnio:9 dni
0
Kopiuj
char Zero='0';
if(Zero==48) cout<<"znak cyfry to nie liczba"<<endl;

Wykonuję programy na zamówienie, pisać na Priv.
Asm/C/C++/Pascal/Delphi/Java/C#/PHP/JS oraz inne języki.

Zarejestruj się i dołącz do największej społeczności programistów w Polsce.

Otrzymaj wsparcie, dziel się wiedzą i rozwijaj swoje umiejętności z najlepszymi.