Hej igen, og tak for svaret.
Jeg er nu kommet frem til at have denne kode:
#include <iostream.h>
#include <string.h>
#include <cctype>
int main()
{
// Variabel dimensioneringer
string userInput;
int tal = 0;
int bogst = 0;
int i = 0;
// Udskriv forespørgsel og få input fra brugeren
cout << "Indtast enten et talord, eller et heltal mellem 0 og 999999: ";
cin >> userInput;
// Tjek om inputtet er et tal, om det er et talord, eller om det er blandet
for(i=0; i<userInput.length(); i++) {
cout << userInput[i] << endl;
if((int)userInput[i]>=0 && (int)userInput[i]<=9){
tal=1;
}
if((userInput[i]>='a' && userInput[i]<='z')||(userInput[i]>='A' && userInput[i]<='Z')){
bogst=1;
}
}
cout << endl << tal << endl << bogst;
if(tal && !bogst){
cout << "rene tal";
}
if(!tal && bogst){
cout << "rene bogstaver";
}
if(tal && bogst){
cout << "blandet tal og bogstaver";
}
}
Den virker på den måde at bogst får værdien 1 når userInput indeholder bogstaver, men tal får ikke værdien 1 når userInput indeholder tal, hvordan kan det være?
Ud over dette får jeg en advarsel om at jeg sammenligner signed og unsigned værdier i linie 10.
Hvis du gider kigge på det vil jeg blive glad, øger lige point til 30.
Mvh Mark
--
www.gameshots.dk