According to Wikipedia, IPv4 addresses are canonically represented in dot-decimal notation, which consists of four decimal numbers, each ranging from 0 to 255, separated by dots, e.g., 172.16.254.1 . The generalized form of an IPv4 address is (0-255).(0-255).(0-255).(0-255). Here we are considering numbers only from 0 to 255 and any additional leading zeroes will be considered invalid. Your task is to complete the
According to Wikipedia, IPv4 addresses are canonically represented in dot-decimal notation, which consists of four decimal numbers, each ranging from 0 to 255, separated by dots, e.g., 172.16.254.1 . The generalized form of an IPv4 address is (0-255).(0-255).(0-255).(0-255). Here we are considering numbers only from 0 to 255 and any additional leading zeroes will be considered invalid. Your task is to complete the
Database System Concepts
7th Edition
ISBN:9780078022159
Author:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Chapter1: Introduction
Section: Chapter Questions
Problem 1PE
Related questions
Question
Write a program to Validate an IPv4 Address. | |
According to Wikipedia, IPv4 addresses are canonically represented in | |
dot-decimal notation, which consists of four decimal numbers, | |
each ranging from 0 to 255, separated by dots, e.g., 172.16.254.1 . | |
The generalized form of an IPv4 address is (0-255).(0-255).(0-255).(0-255). | |
Here we are considering numbers only from 0 to 255 and | |
any additional leading zeroes will be considered invalid. | |
Your task is to complete the function isValid which returns 1, | |
if the ip address is valid else returns 0. | |
The function takes a string s as its only argument . | |
**************************************************************************/ | |
// SOLUTION (in C++): | |
#include <bits/stdc++.h> | |
using namespace std; | |
int isValid(string s) | |
{ | |
s += '.'; | |
int countDots = 0; | |
string str = ""; | |
for (int i = 0; i < s.length(); i++) | |
{ | |
if (s[i] != '.') | |
{ | |
if (s[i] >= 48 && s[i] <= 57) | |
str += s[i]; | |
else | |
return0; | |
} | |
if (s[i] == '.') | |
{ | |
if (str[0] == '.' && str.length() > 1) | |
return0; | |
stringstream obj(str); | |
int x = 0; | |
obj >> x; | |
if (x < 0 || x > 255) | |
return0; | |
if (str.size() == 0) | |
return0; | |
countDots++; | |
str = ""; | |
} | |
if (countDots == 4) | |
return1; | |
else | |
return0; | |
} | |
} | |
intmain() | |
{ | |
string s; | |
cin >> s; | |
int k = isValid(s); | |
if (k == 0) | |
cout << "Valid" << endl; | |
else.
|
Expert Solution
This question has been solved!
Explore an expertly crafted, step-by-step solution for a thorough understanding of key concepts.
This is a popular solution!
Trending now
This is a popular solution!
Step by step
Solved in 3 steps with 1 images
Knowledge Booster
Learn more about
Need a deep-dive on the concept behind this application? Look no further. Learn more about this topic, computer-science and related others by exploring similar questions and additional content below.Recommended textbooks for you
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
Database System Concepts
Computer Science
ISBN:
9780078022159
Author:
Abraham Silberschatz Professor, Henry F. Korth, S. Sudarshan
Publisher:
McGraw-Hill Education
Starting Out with Python (4th Edition)
Computer Science
ISBN:
9780134444321
Author:
Tony Gaddis
Publisher:
PEARSON
Digital Fundamentals (11th Edition)
Computer Science
ISBN:
9780132737968
Author:
Thomas L. Floyd
Publisher:
PEARSON
C How to Program (8th Edition)
Computer Science
ISBN:
9780133976892
Author:
Paul J. Deitel, Harvey Deitel
Publisher:
PEARSON
Database Systems: Design, Implementation, & Manag…
Computer Science
ISBN:
9781337627900
Author:
Carlos Coronel, Steven Morris
Publisher:
Cengage Learning
Programmable Logic Controllers
Computer Science
ISBN:
9780073373843
Author:
Frank D. Petruzella
Publisher:
McGraw-Hill Education