Vous ne trouvez pas de réponse à votre problème ? Alors posez la question dans le forum. Souvenez-vous qu'il n'y a jamais de question bête, mais rester dans l'ignorance parce que l'on n'ose pas poser une question, ça c'est une erreur !

CONVERSION CHAR EN INT


Information sur la source

Description


 

Source

  • #include<iostream.h>
  • #include<string.h>
  • int puis10(int i)
  • {
  • int j,p=1;
  • for (j=0;j<i;j++) p*=10;
  • //Calcul de la puissance ième de 10
  • return p;
  • }
  • bool entier(char t[],int &ent)
  • {
  • int i,chalen;
  • ent=0;
  • chalen=strlen(t);
  • for (i=0;i<chalen;i++)
  • {
  • if ((t[i]<'0') || (t[i]>'9')) return false;
  • //Teste si la chaîne est valide
  • }
  • for (i=0;i<chalen;i++) ent+=puis10(chalen-i-1)*(t[i]-'0');
  • //Calcule la valeur de la chaîne
  • return true;
  • }
  • void main()
  • {
  • int ent,enu,somme;
  • char t[100],u[100];
  • bool validt,validu;
  • do
  • {
  • cout<<"Entrez un entier t : ";
  • cin>>t;
  • cout<<"Entrez un entier u : ";
  • cin>>u;
  • validt=entier(t,ent);
  • validu=entier(u,enu);
  • } while ((!validt) || (!validu));
  • somme=ent+enu;
  • cout<<"La somme des deux entiers entres est : "<<somme<<endl<<endl;
  • }
#include<iostream.h>
#include<string.h>

int puis10(int i)
{
	int j,p=1;
	for (j=0;j<i;j++) p*=10;
	//Calcul de la puissance ième de 10
	return p;
}

bool entier(char t[],int &ent)
{
	int i,chalen;
	ent=0;
	chalen=strlen(t);
	for (i=0;i<chalen;i++)
	{
		if ((t[i]<'0') || (t[i]>'9')) return false;
		//Teste si la chaîne est valide
	}

	for (i=0;i<chalen;i++) ent+=puis10(chalen-i-1)*(t[i]-'0');
	//Calcule la valeur de la chaîne
	return true;
}



void main()
{
	int ent,enu,somme;
	char t[100],u[100];
	bool validt,validu;
	do
	{
		cout<<"Entrez un entier t : ";
		cin>>t;
		cout<<"Entrez un entier u : ";
		cin>>u;
		validt=entier(t,ent);
		validu=entier(u,enu);
	} while ((!validt) || (!validu));
	somme=ent+enu;
	cout<<"La somme des deux entiers entres est : "<<somme<<endl<<endl;
}  

Commentaires et avis

signaler à un administrateur
Commentaire de Carnage le 28/09/2003 22:11:37

j'allais faire exactement la meme fonction que toi, en desesperant de ne pas trouver de fonction qui le fait inclu dans une bibliothèque, mais maintenant c'est fait.

En tt cas, bravo pour ta fonction.

CaRnAgE

signaler à un administrateur
Commentaire de Icarius44 le 19/10/2005 20:43:18

Ce code ne fait pas comme atoi, il est complementaire et MIEUX!!!!!
atoi fait "char* en int" lui fait "char en int". c'est surtout ce petit bout de code qui m'a aidé :

(t[i]-'0') <-> char to int

Encore merci de ce code qui nous a débloqué à quelque jours de la rendu d'un Mini Projet.
Icarius

signaler à un administrateur
Commentaire de Crazyx le 23/11/2006 19:07:20

Veut-pas être rabat joir mais vu que je passais par là ...
atoi(&c) ou c est un char (et pas un char*) ca marche aussi.
bon boulot tout de meme.

CrazYx

Ajouter un commentaire



Nos sponsors

Sondage...

CalendriCode

Juillet 2009
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
2728293031  

Consulter la suite du CalendriCode

Comparez les prix Nouvelle version

Photothèque Nouveau !



Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés
Temps d'éxécution de la page : 0,218 sec

Google Coop CodeS-SourceS Google Coop CodeS-SourceS


Certaines images présentes sur le site (notament certains avatars) sont issues des collections IconShock, donc si vous souhaitez utiliser ces icons vous devez les acheter, ne les copiez pas et ne utilisez pas dans vos sites et applications sans les avoir commandé.