Решение задачи IP-адрес с Mccme

Без пояснения   Просмотров: 65


Для того чтобы выходить в Интернет, каждому компьютеру присваивается так называемый IP-адрес. Он состоит из четырех целых чисел в диапазоне от 0 до 255, разделенных точками. В следующих трех строках показаны три правильных IP-адреса:

127.0.0.0
192.168.0.01
255.00.255.255
Напишите программу, которая определяет, является ли заданная строка правильным IP-адресом.

Код

#include <bits/stdc++.h>

using namespace std;

int main()
{
    string s;
    cin >> s;
    char ip[16];
    if(s[0] == '.' || s[s.size() - 1] == '.'){
        cout << 0;
        return 0;
    }
    if(s.find("..") + 1){
        cout << 0;
        return 0;
    }
    for(int i = 0; i < s.size(); ++i)
        ip[i] = s[i];
    int result = 1;
    char *pch = strtok(ip, ".");
    while (pch != NULL)
    {
        if(stoi(pch) < 0 || stoi(pch) > 255){
            result = 0;
            break;
        }
        pch = strtok(NULL, ".");
    }

    cout << result << endl;
    return 0;
}

         

Kirill Photo Автор: Kirill



Комментарии

Чтобы написать комментарии вам нужно войти в систему или зарегистрироваться