Lakomka » 18 окт 2005, 10:45
ммм.. получилось :P
теперь заморочка вот на чем
Определить, является ли введенная строка правильной записью целого шестнадцатеричного числа без знака, прога запускается, но когда ввожу строку (например 5А3) результат выдает не тот что нужно, она на каждую совпадающую букву или цифру в строке пишет да да да
Код: Выделить всё
#include <iostream>
using namespace std;
#include <stdio.h>
#include <windows.h>
#include <string.h>
void main ()
{
char str[128];
CharToOem("Введите строку",str);cout<<str;cin>>str;
int i;
for(i=0;i<strlen(str);i++)
{
if (strspn(str, "0123456789abcdefABCDEF") == strlen (str))
{ cout << " yes " << endl;}
else {cout << " no " << endl;}
} }
ммм.. получилось :P
теперь заморочка вот на чем
Определить, является ли введенная строка правильной записью целого шестнадцатеричного числа без знака, прога запускается, но когда ввожу строку (например 5А3) результат выдает не тот что нужно, она на каждую совпадающую букву или цифру в строке пишет да да да
[code]#include <iostream>
using namespace std;
#include <stdio.h>
#include <windows.h>
#include <string.h>
void main ()
{
char str[128];
CharToOem("Введите строку",str);cout<<str;cin>>str;
int i;
for(i=0;i<strlen(str);i++)
{
if (strspn(str, "0123456789abcdefABCDEF") == strlen (str))
{ cout << " yes " << endl;}
else {cout << " no " << endl;}
} }[/code]