[C++] isalpha

C, C++, Java, PHP, Ruby...

Moderator/ica: Moderatori/ce

Pravila foruma
U naslovu teme unutar uglatih zagrada navesti o kojem jeziku je riječ. Primjer: [Java]
Avatar
drone
Moderator
Postovi: 3293
Pridružen/a: 01 pro 2010, 23:50
OS: Arch/KDE, Debian/Armbian
Lokacija: Nova Gradiška

Re: čavrljanje

Post Postao/la drone »

Radi i meni. char ili int nisu bitni, samo kod unosa ako je int treba unijeti ascii kod slova da bi bilo true. U međuvremenu sam napisao svoju verziju, ista stvar...

Kod: Označi sve

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

int main()
{
	int broj; 
	cin >> broj;
	if(isalpha(broj))
		cout << "\nvarijabla broj je slovo.\n" << endl;
	else
		cout << "\nvarijabla broj nije slovo.\n" << endl; 
	
	return 0;
}

Kod: Označi sve

$ g++ isalphatest.cpp -o isalphatest
$ chmod +x isalphatest
$ ./isalphatest
67

varijabla broj je slovo.

1986-1990: Commodore64 / 1990-1994: Amiga 500 / 1995-1996: Amiga 1200 / 1997-2001: N/A@home /
2002-2004: Windows98, XP /
2004-2005: Knoppix, Mandrake / 2005: Mandriva, Ubuntu / 2005-2009: LFS / 2009-2010: Mint /
2010-... Arch
Avatar
PunkBastard
Postovi: 1975
Pridružen/a: 19 srp 2011, 22:39
Spol: M
OS: Debian 7 Wheezy
Lokacija: wonderland

Re: čavrljanje

Post Postao/la PunkBastard »

drone je napisao/la:Radi i meni. char ili int nisu bitni, samo kod unosa ako je int treba unijeti ascii kod slova da bi bilo true. U međuvremenu sam napisao svoju verziju, ista stvar...

Kod: Označi sve

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

int main()
{
	int broj; 
	cin >> broj;
	if(isalpha(broj))
		cout << "\nvarijabla broj je slovo.\n" << endl;
	else
		cout << "\nvarijabla broj nije slovo.\n" << endl; 
	
	return 0;
}

Kod: Označi sve

$ g++ isalphatest.cpp -o isalphatest
$ chmod +x isalphatest
$ ./isalphatest
67

varijabla broj je slovo.

a ako se unese direktno slovo sa tipkovnice? Taj isalpha() u programu je trebao biti debug ako se umjesto broja unese slovo.
I don't want to be a human. I want to see gamma rays, I want to hear x-rays and I want to smell dark matter. I want to reach out with something other than this prehensile paws and feel the solar wind of a super nova flowing over me.
Slamd64

Re: čavrljanje

Post Postao/la Slamd64 »

evo i moja verzija

Kod: Označi sve

#include<iostream>
#include<stdexcept>
#include<cctype>
#include<vector>
using namespace std;

int main(){

vector<int> broj;
int x;
while(cin>>x)
broj.push_back(x);
for(int i=0; i<broj.size();i++)
{
if (isalpha(broj[i])){
 cout<< "is alpha!" << endl;

}
}

}
Ovdje kod vektora intova cim uneses slovo terminira program.
Avatar
PunkBastard
Postovi: 1975
Pridružen/a: 19 srp 2011, 22:39
Spol: M
OS: Debian 7 Wheezy
Lokacija: wonderland

Re: čavrljanje

Post Postao/la PunkBastard »

Slamd64 je napisao/la:evo i moja verzija

Kod: Označi sve

#include<iostream>
#include<stdexcept>
#include<cctype>
#include<vector>
using namespace std;

int main(){

vector<int> broj;
int x;
while(cin>>x)
broj.push_back(x);
for(int i=0; i<broj.size();i++)
{
if (isalpha(broj[i])){
 cout<< "is alpha!" << endl;

}
}

}
Ovdje kod vektora intova cim uneses slovo terminira program.
primjer sa www.cplusplus.com, lol
I don't want to be a human. I want to see gamma rays, I want to hear x-rays and I want to smell dark matter. I want to reach out with something other than this prehensile paws and feel the solar wind of a super nova flowing over me.
Slamd64

Re: čavrljanje

Post Postao/la Slamd64 »

o cemu ti? nisam nista kopirao, ovo sam iz glave napisao.

evo ti i output

[dino@archlinux test]$ vim prvi.cpp
[dino@archlinux test]$ g++ prvi.cpp
[dino@archlinux test]$ ./a.out
67 89 92 7 1 2 51 1
is alpha!
is alpha!
Avatar
PunkBastard
Postovi: 1975
Pridružen/a: 19 srp 2011, 22:39
Spol: M
OS: Debian 7 Wheezy
Lokacija: wonderland

Re: čavrljanje

Post Postao/la PunkBastard »

Slamd64 je napisao/la:o cemu ti? nisam nista kopirao, ovo sam iz glave napisao.
ista stvar, malo izmjenjena: http://www.cplusplus.com/reference/cctype/isalpha/
ali nije u tome stvar, problem je sto mi ne radi iz nepoznatog razloga.

edit: zasad
I don't want to be a human. I want to see gamma rays, I want to hear x-rays and I want to smell dark matter. I want to reach out with something other than this prehensile paws and feel the solar wind of a super nova flowing over me.
Slamd64

Re: čavrljanje

Post Postao/la Slamd64 »

koristi codeblocks ili jednostavno vim
Avatar
PunkBastard
Postovi: 1975
Pridružen/a: 19 srp 2011, 22:39
Spol: M
OS: Debian 7 Wheezy
Lokacija: wonderland

Re: čavrljanje

Post Postao/la PunkBastard »

Slamd64 je napisao/la:koristi codeblocks ili jednostavno vim
codebloks mi se ne svidja a vi/vim jos moram uciti.
I don't want to be a human. I want to see gamma rays, I want to hear x-rays and I want to smell dark matter. I want to reach out with something other than this prehensile paws and feel the solar wind of a super nova flowing over me.
Avatar
drone
Moderator
Postovi: 3293
Pridružen/a: 01 pro 2010, 23:50
OS: Arch/KDE, Debian/Armbian
Lokacija: Nova Gradiška

Re: čavrljanje

Post Postao/la drone »

PunkBastard je napisao/la: a ako se unese direktno slovo sa tipkovnice? Taj isalpha() u programu je trebao biti debug ako se umjesto broja unese slovo.
Onda umjesto int koristi char (char broj;) ili casting na char, inače će reći da nije slovo.

EDIT: ja sam za takvu provjeru koristio isdigit funkciju kojoj bih u petlji proslijedio pojedine znakove stringa za provjeru. Ali to je više C stil nego C++ gdje imaš modernije (i kompliciranije) stvari na raspolaganju.
1986-1990: Commodore64 / 1990-1994: Amiga 500 / 1995-1996: Amiga 1200 / 1997-2001: N/A@home /
2002-2004: Windows98, XP /
2004-2005: Knoppix, Mandrake / 2005: Mandriva, Ubuntu / 2005-2009: LFS / 2009-2010: Mint /
2010-... Arch
Avatar
PunkBastard
Postovi: 1975
Pridružen/a: 19 srp 2011, 22:39
Spol: M
OS: Debian 7 Wheezy
Lokacija: wonderland

Re: čavrljanje

Post Postao/la PunkBastard »

drone je napisao/la:
PunkBastard je napisao/la: a ako se unese direktno slovo sa tipkovnice? Taj isalpha() u programu je trebao biti debug ako se umjesto broja unese slovo.
Onda umjesto int koristi char (char broj;) ili casting na char, inače će reći da nije slovo.
treba biti broj, ako se unese slovo, unosi se ponovno dok se ne unese vazuci unos sto je broj (int)
I don't want to be a human. I want to see gamma rays, I want to hear x-rays and I want to smell dark matter. I want to reach out with something other than this prehensile paws and feel the solar wind of a super nova flowing over me.
Odgovori