Member 14066370 Ответов: 1

В C++ я хочу получить номер cnic...если я введу больше 13 number.it нужно показать сообщение о том, что число целых чисел больше заданного пространства.


В c++ я хочу получить номер cnic...если я введу больше 13 number.it нужно показать сообщение о том, что число целых чисел больше заданного пространства.


#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
	
	int cnic,a=0;
	
	while (cnic[a]!='/0')
	{
	cin>>cnic;
	a++;
	}
	if(a==12)
	cout<<"valid";
	else 
	cout<<"Invalid";
	return 0;
}


Что я уже пробовал:

#include<iostream>
#include<conio.h>
using namespace std;
int main()
{
	
	int cnic,a=0;
	
	while (cnic[a]!='/0')
	{
	cin>>cnic;
	a++;
	}
	if(a==12)
	cout<<"valid";
	else 
	cout<<"Invalid";
	return 0;
}

1 Ответов

Рейтинг:
2

Afzaal Ahmad Zeeshan

Вы должны использовать массив вместо переменной типа значения,

int cnic,a=0;
Это будет изменено на,
int cnic[13];
int a = 0;
Это будет контейнер, который может содержать 13 значений. А также, возможно, вы захотите взглянуть на do...while, вместо while циклы, как я полагаю, это то, что вы ищете, так как ваш код не будет работать так, как вы ожидаете. И более того, "\0 "- это то, что вы ищете, а не "/0". :смеяться:

Простой совет был бы таков: подумайте о том, чтобы использовать for(;;) петля вместо этого while петля.

Так много, чтобы узнать брат, пожалуйста, перейдите по следующим ссылкам и изучите немного больше C++,
Массивы - Учебники По C++ [^]
циклы - разница между while и do while C++? - переполнение стека[^]
в C# - 'делать...а' и 'А' - переполнение стека[^]


Richard MacCutchan

Я думаю, что было бы лучше объявить cnic как char тип для этой задачи.

Afzaal Ahmad Zeeshan

Да, но в основном здесь мы храним 13-значные значения для CNIC, которые являются числами. Черточки ставятся потом, как маска. Так вот почему я не обратил особого внимания на эту часть. Обычный CNIC здесь-12345-134567-1.

Но да, вы правы, это может быть символьный тип данных и длина 15.

Richard MacCutchan

Мне просто пришло в голову (после прочтения статьи Википедии для CNIC), что хранение в виде типа char облегчит разделение двух основных полей и преобразование их в числовые значения или сравнение с любыми действующими правилами.