begin process at 2012 05 28 10:20:21
  Trouver un code source :
 
dans
 
Accueil > Forum > 

C

 > 

Divers

 > 

Débutant(e)

 > 

Calculatrice Scientifique


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

Calculatrice Scientifique

dimanche 19 septembre 2010 à 14:32:57 | Calculatrice Scientifique

Makia42

Bonjour tout le monde,

Je travaille sur l'écriture d'une calculatrice simple fonctionnant de la manière suivante :

- Je déclare PI comme une constante
- Je souhaite que les 4 opérations élémentaire sur entier soit dans unique fichier source et que les 4 opération élémentaire sur flottant soit dans un autre fichier source
- enfin les 2 opération racine carré et puissance seront toute deux dans un autre fichier source

Mon problème se situe au niveau des opération sur entier et sur flottant car je n'arrive pas à trouver une méthode me permettant de tester l'entrée clavier pour savoir de quel type de donnée il s'agit.

Voici mon avancement actuel :
Code C/C++ :
 programme d'une calculatrice scientifique

#include <stdio.h>
#include <stdlib.h>
#include <string.h>
//#include <int_op.h>
//#include <float_op.h>
//#include <others_op.h>

#define PI 3.1415

void typtest(int,float,char *);
long nb =0;

int main(void)
{

long op,nb1 = 0,nb2 = 0,resultat = 0;
int i = 0; float x = 0; char pi[3];
	printf("Calculatrice Scientifique\n\n\r");
	printf("Choisissez l'operation a effectuer:\n\n");
		printf("1.Addition:\n");
		printf("2.Soustraction:\n");
		printf("3.Multiplication:\n");
		printf("4.Division:\n");
		printf("5.racine carre de :\n");
		printf("6.Puissance :\n");
		scanf("%ld",&op);
		
		switch(op)
		{
		case 1:
			printf("Entrez le premier nombre:\n\r");
			printf("Pour  PI(= 3.1415) taper : pi \n\r");
			scanf("%d%f%*s",&i,&x,&pi);
			typtest(i,x,pi);
			
			printf("Entrez le deuxieme nombre:\n\r");
			printf("Pour  PI(=3.1415) taper : 2\n\r");
			scanf("%d%f%*s",&i,&x,&pi);
			typtest(i,x,pi);
			
				break;
		case 2:
			printf("Entrez le premier nombre:\n\r");
			scanf("%ld",&nb1);
			printf("Entrez le deuxieme nombre:\n\r");
			scanf("%ld",&nb2);
			
			resultat = nb1 - nb2;
			printf("%ld - %ld = %ld \n\r",nb1,nb2,resultat);
				break;
		case 3:
			printf("Entrez le premier nombre:\n\r");
			scanf("%ld",&nb1);
			printf("Entrez le deuxieme nombre:\n\r");
			scanf("%ld",&nb2);
			
			resultat = nb1 * nb2;
			printf("%ld * %ld = %ld \n\r",nb1,nb2,resultat);
				break;
		case 4:
			printf("Entrez le premier nombre:\n\r");
			scanf("%ld",&nb1);
			printf("Entrez le deuxieme nombre:\n\r");
			scanf("%ld",&nb2);
			
			resultat = nb1 / nb2;
			printf("%ld / %ld = %ld \n\r",nb1,nb2,resultat);
				break;
		}
		return 0;
}

void typtest(int a, float b,char *c)
{	

 	if(a !=0 ){
	 	printf("nombre entier : %d\n",a);
	 	return(nb = a);
	 	}
	 	
	else if(b != 0){
	 	printf("nombre flottant : %f\n",b);
	 	return (nb = b);
	 	}
	 	
	else if(c != 0){
		printf("pi(3.1415)");
		nb = 3.1415;
		return (nb = 3.1415);
		}
 	
}



A la compilation j'ai 5 warning :

[COLOR="Red"]calc_scientifique.c: In function &#8216;main&#8217;:
calc_scientifique.c:35: warning: too many arguments for format
calc_scientifique.c:40: warning: too many arguments for format
calc_scientifique.c: In function &#8216;typtest&#8217;:
calc_scientifique.c:80: warning: &#8216;return&#8217; with a value, in function returning void
calc_scientifique.c:85: warning: &#8216;return&#8217; with a value, in function returning void
calc_scientifique.c:91: warning: &#8216;return&#8217; with a value, in function returning void
[/COLOR]

Pourriez vous me guidez sur une piste éventuel ?
Merci
Cordialement.
mercredi 22 septembre 2010 à 14:46:48 | Re : Calculatrice Scientifique

eliramomo

bonjour,
deja vous declarer typtest void , et vous voulez qu'elle retourne une valeur ?? faut savoir changer le type de la fonction soit enlever le return
bonne chance


Cette discussion est classée dans : printf, nb1, pi, ld, scientifique


Répondre à ce message

Sujets en rapport avec ce message

[Débutant ] Créer une calculatrice [ par rockerguitar ] Bonsoir à tous !Je suis nouveau dans le monde de la programmation. J'ai commencé il y a 3 jours. Mon projet est de créer un jeu musical sur la Nintend affichage de tout un double [ par xian240482 ] petit programme : #include #include "stdafx.h" void main() {     double d1 = 3.14159265358979323846;     printf("Pi = %.52f\n",d1);     double d2 = 0 prob de virgule pour disision [ par stefbuet ] oui je sais c tt c** mais j'ai un trou de mémoire, car j'ai arrété le C pendant un pti moment et donc je me souvien plus trop d'un truc :pour faire l' probleme avec les if et else [ par alexfr34 ] alexfr34 Bonjour, j'ai perdu le fil avec le chat je ne comprends pas trop le mode d'emploi quelqu'un problème en c [ par alix46 ] Bonjour, mon programme doit vérifier la validité d'un compte bancaire mais il ne marche pas, on m'a conseillé d'utiliser un tableau mais je n'y arrive [c] bug dans un code [ par novocain3 ] bonjour, Newbi en programmation, je me suis lancé dans la creation d'un code en [c] qui doit inscrir les valeur d'un tableau à 2 dimensions dans un ta Heure d'été [ par BastienL21 ] Bonjour tout le monde, Etant en train de programmer un mini-OS (tournant sous Windows XP), je suis confronté à un problème qui ne doit pas être très VOID [ par langenoir7712 ] AIDER MOI SVP JE VEUX LE MEME PROGRAMME MAIS MTN AVEC UN VOID POUR NE PAS AVOIR TOUT CE BLABLA REPONDEZ MOI SVPMERCI D'AVANCE#include #include #includ [C++] Fenetre Bloquer lors de la recuperation de packets sous WinPcap [ par chris5 ] Bonjour a tous, je suis débutant amateur en programmation c++ et j'ai actullement un probleme avec WinPcap : Je n'arrive pas a faire de lecture de pac Problème de débutant en C [ par ArcHeretic ] Bonjour,Alors voila j'aimerais juste savoir ce qu'il cloche dans mon bout de code :#include #include using namespace std;


Nos sponsors


Sondage...

CalendriCode

Mai 2012
LMMJVSD
 123456
78910111213
14151617181920
21222324252627
28293031   

Consulter la suite du CalendriCode

A découvrir



 
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

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 0,952 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales