SkyDriver
Would like my bananna ?
- Член од
- 31 јули 2008
- Мислења
- 2.140
- Поени од реакции
- 221
Еве и во C++ Step by Step без користење на библиотеки:
Ако сакаш можеш сите функции да ги ставиш во една ![Насмевка :) :)](/styles/default/xenforo/smilies/smile.png)
Код:
#include <iostream>
using namespace std;
// Пребаруваш карактер во низа од карактери
// Ако не постои таков карактер враќа -1
// во спротивно ја враќа позицијата на карактерот кој го бараш
int find( char *str, char ch ) {
int i = 0;
while( str[i] ) {
if( str[i] == ch ) return i;
i++;
}
return -1;
}
// Враќа должина на низа од карактери
int length( char *str ) {
int i = 0;
while( str[i] ) { i++; }
return i;
}
// Враќа подстринг
char *substring(char *str, int start, int end) {
char *temp = new char[end-start+1];
int j = 0;
for(int i=start; i<end; i++) {
temp[j] = str[i];
j++;
}
temp[end-start] = '\0';
return temp;
}
// Проверува меил
int F(char *email) {
int at = -1;
int i = 0;
while( email[i]) {
if( email[i] == '@' ) {
at = i;
break;
}
i++;
}
if( at < 0 ) return 0;
char *name = substring(email, 0, at);
if( length(name) < 2 || name[at-1] == '.') return 0;
char *domain = substring(email, at+1, length(email)-1);
if( length(domain) < 2 || domain[0] == '.' || find(domain, '.') < 0) return 0;
return 1;
}
int main() {
cout << F("kire@gmail.com") << endl;
cout << F(".@yahoo") << endl;
cout << F("a@.com") << endl;
cout << F("ana@.") << endl;
cin.get();
cin.get();
}
![Насмевка :) :)](/styles/default/xenforo/smilies/smile.png)