इस समस्या में, हमें उपयोगकर्ता से इनपुट दिया गया है। हमारा कार्य C++ में उपयोगकर्ता इनपुट का डेटा टाइप ढूंढने के लिए एक प्रोग्राम बनाना है।
समस्या विवरण
हम उपयोगकर्ता से इनपुट लेंगे और इनपुट मान के डेटा टाइप की जांच करेंगे।
उदाहरण 1:
इनपुट: 34
आउटपुट: It is an integer
उदाहरण 2:
इनपुट: tutorialspoint
आउटपुट: It is a string
हल करने का दृष्टिकोण:
हम जांचेंगे कि इनपुट स्ट्रिंग एक संख्या है या नहीं।
यदि यह एक संख्या है, तो हम जांचेंगे कि यह एक पूर्णांक है या फ्लोट मान।
यदि यह एक संख्या नहीं है, तो हम जांचेंगे कि यह एक स्ट्रिंग है।
उदाहरण (C++ कोड)
#include <math.h>
#include <stdio.h>
#include <stdlib.h>
int main() {
char input[50] = "";
double temp;
int intVal;
char stringVal[50] = "";
double val = 1e-12;
fgets(input, 100, stdin);
if (sscanf(input, "%lf", &temp) == 1) {
intVal = (int)temp;
if (fabs(temp - intVal) / temp > val)
printf("The input is a floating point\n");
else
printf("The input is an integer\n");
}
else if (sscanf(input, "%s", stringVal) == 1)
printf("The input is a string\n");
else
printf("input not recognized\n");
}
इनपुट:
452
आउटपुट:
The input is an integer