need beta tester pour mon program (100 ko)

need beta tester pour mon program (100 ko) - C++ - Programmation

Marsh Posté le 29-11-2002 à 23:24:31    

http://www.ifrance.com/timtam/date.exe
 
 
je suis debutant en c++.
normalement toute les errers sont gerees, sauf
:
l entre de caractere a la place de chiffre
l entre de nbr a virgule
 
 
 :jap:  
si la source vous interesse
 
 

Code :
  1. #include <iostream>
  2. #include <string>
  3. bool bissextile(int v)                       //function which check if a year
  4. {                                            //is bissextile or not.
  5. if((v % 4 == 0) && ((v % 100 != 0) || (v % 400 == 0)))
  6. return true;
  7. else return false;
  8. }
  9. int main()
  10.     {
  11.      long  year,day;
  12.      int month,l;
  13.      bool p,y=false;
  14.      int i,k=0;
  15.      string t,h;
  16.      t = "n";
  17. while (t=="n" )
  18.          {
  19. cout <<"                                    \n";
  20. cout << "               ///\\               \n";
  21. cout << "             (@ @)                 \n";
  22. cout << "   +---oOO----(_)---Ooo-----+      \n";
  23. cout << "   |        TAGMC21 ©       I      \n";
  24. cout << "   I     Sibt dec 2002      |      \n";
  25. cout << "   I         V 0.2          |      \n";
  26. cout << "   +------------------------+      \n";
  27. cout << "            |__|__|                \n";
  28. cout << "              || ||                \n";
  29. cout << "             ooO Ooo               \n";
  30. cout <<"                                    \n";
  31. cout <<"ASSIGNEMENT 2 : § 10 Killer days § \n";
  32. cout <<" \n"<<endl;;
  33.     // year
  34.            cout <<"Enter your  birth YEAR [digits]. \n";
  35.            cin >> year;
  36.             if (bissextile(year))
  37.               { cout <<"BISSEXTILE year, february : 29 days\n"<< endl;
  38.               p=true; }
  39.             else   { cout <<"NON BISSEXTILE year, february : 28 days \n"<< endl;
  40.               p=false ; }
  41.      // month
  42.      cout << "Enter your birth MONTH [digits]. \n";
  43.      cin >> month;
  44.          do
  45.          {
  46.           if ((month<1)|| (month>12))
  47.            { cout <<"ERROR try again  :p \n" <<endl;
  48.              cout <<"Enter your birth MONTH [digits]. \n";
  49.              cin >> month;   }
  50.           else continue;
  51.          }
  52.      while ((month<1) || (month>12));
  53.      cout << month <<" OK.\n"<< endl;
  54.      // days
  55.      // check if the number entered match mith the month
  56.      // and the year (bissextile)
  57.      cout <<"Enter your birth DAY of[digits]. \n";
  58.      cin >> day;
  59.         do
  60.         {
  61.          if ((day<1) || (day>31))
  62.             { cout <<"ERROR try again  :p \n" <<endl;
  63.             cout <<"Enter your birth DAY [digits]. \n";
  64.             cin >> day;   }
  65.          else if ((day<1) || (day>30 && month==4) ||(day>30 && month==6)|| (day>30 && month==7)
  66.          ||(day>30 && month==9)||(day>30 && month==11))
  67.             { cout <<"ERROR ,month number "<< month <<" , have only 30 days  :p \n" <<endl;
  68.             cout <<"Enter your birth DAY [digits]. \n";
  69.             cin >> day;   }
  70.          else if ((day<1) || (day>28 && month==2 && p==false))
  71.             { cout <<"ERROR february " << year << " have only 28 days :p \n"<<endl;
  72.             cout <<"Enter your birth DAY [digits]. \n";
  73.             cin >> day;   }
  74.          else if ((day<1) || (day>29 && month==2 && p==true))
  75.             { cout <<"ERROR february " << year << " have only 29 days :p \n"<<endl;
  76.             cout <<"Enter your birth DAY [digits]. \n";
  77.             cin >> day;   }
  78.          else continue;
  79.           }
  80.      while ((day<1) || (day>29 && month==2 && p==true) || (day>28 && month==2 && p==false)
  81.       || (day>31 && month != 2 ));
  82.      cout << day <<" OK.\n"<<endl;
  83.        //Number of days (10000 default)
  84.            cout <<"Enter the number of days you want \n";
  85.            cout <<"[type 10000] for assignements goal \n" << endl;
  86.            cin >> l;
  87.            do
  88.          {
  89.           if (l<1)
  90.            { cout <<"ERROR try again  :p \n" <<endl;
  91.            cout <<"Enter the number of days you want \n";
  92.            cout <<"[type 10000] for assignements goal \n" <<endl;
  93.            cin >> l;  }
  94.           else continue;
  95.          }
  96.           while (l<1);
  97.      // processing of the 10000 days anniversary date
  98.      // years : -365 each bissextile year (every 4 years) , -364 each normal year.
  99.    while ((l>=365 && y==true) || (l>=364 && y==false))
  100. {
  101.       if  (bissextile (year))
  102.       { y=true;
  103.         year=year+1;
  104.         l=l-365;
  105.        }
  106.       else
  107.       { y=false;
  108.         year=year+1;
  109.        l=l-364 ;
  110.        }
  111.    }
  112.     // month
  113. while ((l>=31 && month==1) ||(l>=31 && month==3) ||(l>=31 && month==5) ||(l>=31 && month==8) ||
  114. (l>=31 && month==10) || (l>=30 && month==4) ||(l>=30 && month==6) || (l>=30 && month==7) ||
  115. (l>=30 && month==9) || (l>=30 && month==11) ||  (l>=29 && month==2 && (bissextile(year)))
  116. || (l>=28 && month==2) || (l>=12 && month==12))
  117. {
  118.     if(month==2 && bissextile(year))
  119.     { l=l-29;
  120.     month=month+1; }
  121.     else if (month==2)
  122.     { l=l-28 ;
  123.     month=month+1; }
  124.     else if (month==12)
  125.     {l=l-31 ;
  126.      year=year+1;
  127.      month=1; }
  128.     else if (month==1 || month==3 || month==5 || month==8 || month==10)
  129.     {l=l-31;
  130.      month=month+1;}
  131.     else if (month==4 || month==6 || month==7 || month==9 || month==11)
  132.     {l=l-30;
  133.     month=month+1;}
  134.                }
  135. cout << " \n ";
  136. //find the name of the Month
  137. //the name of the day looks like too loog and complex to program
  138. // so i will keep the number solution for days.
  139. switch (month)
  140. {
  141. case 1:  h="January  "  ; break;
  142. case 2:  h="Februray "  ; break;
  143. case 3:  h="March "     ; break;
  144. case 4:  h="April "     ; break;
  145. case 5:  h="May "       ; break;
  146. case 6:  h="June "      ; break;
  147. case 7:  h="Jully "     ; break;
  148. case 8:  h="August "    ; break;
  149. case 9:  h="September " ; break;
  150. case 10: h="October "   ; break;
  151. case 11: h="November "  ; break;
  152. case 12: h="December "  ; break;
  153. }
  154. if (year<0) cout <<l<< " " << h << "" <<year << " BC þ \n";
  155. else cout <<l<< " " << h << "" <<year << " AC þ \n";
  156. endl;
  157. // reinitialize the variables  , needed for executing the programe
  158. //severals times.
  159. year=0;
  160. month=0;
  161. day=0;
  162. p=false;
  163. y=false;
  164. i=0;
  165. k=0;
  166. l=10000;
  167.          cout << " \n";
  168.          cout << " Do you want to quit ??? [y/n]\n";
  169.          cin >> t;
  170.      }
  171.   }


Message édité par COULIX le 29-11-2002 à 23:48:55

---------------
.... et dans les tenebres les lier
Reply

Marsh Posté le 29-11-2002 à 23:24:31   

Reply

Marsh Posté le 29-11-2002 à 23:29:12    

et ça fait un exe de 100 ko ??  :heink:  :heink:


---------------
Défiance (ou méfiance) est mère de sûreté  
Reply

Marsh Posté le 29-11-2002 à 23:32:19    

           

Code :
  1. if (v==j)
  2.                return true;
  3.              else return false;


 
 
ptdr


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 29-11-2002 à 23:35:35    

Code :
  1. year==0;
  2.     month=0;
  3.     day==0;


 
 :heink:  :heink:


---------------
Défiance (ou méfiance) est mère de sûreté  
Reply

Marsh Posté le 29-11-2002 à 23:38:02    

Reply

Marsh Posté le 29-11-2002 à 23:41:26    

charlene a écrit a écrit :

Code :
  1. year==0;
  2.     month=0;
  3.     day==0;


 
 :heink:  :heink:  




oups
 :lol:  
bon je corrige quelque truc et renvoie la nouvellle version ( routine pour savoirsi lannee est bissextile changee) + qq modifs.
sinion sa mrache ?


---------------
.... et dans les tenebres les lier
Reply

Marsh Posté le 29-11-2002 à 23:41:32    

Taz@PPC a écrit a écrit :

             

Code :
  1. if (v==j)
  2.                return true;
  3.              else return false;


 
 
ptdr  




 
retour v==j; ne serait pas plus simple ?

Reply

Marsh Posté le 29-11-2002 à 23:42:30    

coulix a écrit a écrit :

 
oups
 :lol:  
bon je corrige quelque truc et renvoie la nouvellle version ( routine pour savoirsi lannee est bissextile changee) + qq modifs.
sinion sa mrache ?
 



je vais pas charger un exe de 100ko et le lancer. j'ai pas confiance (surtout vu le poids du truc, 100 ko pour un petit prog comme ça ??)


---------------
Défiance (ou méfiance) est mère de sûreté  
Reply

Marsh Posté le 29-11-2002 à 23:47:56    

charlene a écrit a écrit :

je vais pas charger un exe de 100ko et le lancer. j'ai pas confiance (surtout vu le poids du truc, 100 ko pour un petit prog comme ça ??)




mais merdre c vrai ! il fait 100 ko c pas d ema faute je ne sais pas pourquoi j utilise dev c++.
vous avex qu ale passe a lanti virus, ou le decompiler en premier.
et regarde mes autres posts j ai demarre hier....  :pt1cable:


---------------
.... et dans les tenebres les lier
Reply

Marsh Posté le 29-11-2002 à 23:50:49    

moi je vais pas essayer ton truc, vu la tronche de ton code, t'es encore loin d'une release.


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 29-11-2002 à 23:50:49   

Reply

Marsh Posté le 29-11-2002 à 23:54:10    

pour les tet, fourni plutot les sources, kon puisse tester qd on a pas windows... sinon si tu veux un compilo ki te sortira du moins lourd, gcc avec un petit strip derriere (ya strip sous win?)


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 29-11-2002 à 23:55:05    

oui ou tout simplement gcc -s
 
d'ailleurs ca passe pas sous g++...........cout undeclared  :D


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 29-11-2002 à 23:57:04    

Taz@PPC a écrit a écrit :

oui ou tout simplement gcc -s
 
d'ailleurs ca passe pas sous g++...........cout undeclared  :D  




 
why cout undeclared? (je fais du c alors g pas essayer de compiler du cpp)


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 30-11-2002 à 00:02:23    

$g++ -Wall -ansi -pedantic beurk.cpp
beurk.cpp: In function `int main()':
beurk.cpp:18: `string' undeclared (first use this function)
beurk.cpp:18: (Each undeclared identifier is reported only once for each
   function it appears in.)
beurk.cpp:18: parse error before `,' token
beurk.cpp:19: `t' undeclared (first use this function)
beurk.cpp:24: `cout' undeclared (first use this function)
beurk.cpp:37: `endl' undeclared (first use this function)
beurk.cpp:44: `cin' undeclared (first use this function)
beurk.cpp:167: `h' undeclared (first use this function)


 
bon j'arrete, je deviens lourd


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:04:58    

Taz@PPC a écrit a écrit :

$g++ -Wall -ansi -pedantic beurk.cpp
beurk.cpp: In function `int main()':
beurk.cpp:18: `string' undeclared (first use this function)
beurk.cpp:18: (Each undeclared identifier is reported only once for each
   function it appears in.)
beurk.cpp:18: parse error before `,' token
beurk.cpp:19: `t' undeclared (first use this function)
beurk.cpp:24: `cout' undeclared (first use this function)
beurk.cpp:37: `endl' undeclared (first use this function)
beurk.cpp:44: `cin' undeclared (first use this function)
beurk.cpp:167: `h' undeclared (first use this function)


 
bon j'arrete, je deviens lourd




 
c la raison ki m'interresse


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 30-11-2002 à 00:05:25    

:sarcastic: std::


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:11:48    

Taz@PPC a écrit a écrit :

$g++ -Wall -ansi -pedantic beurk.cpp
beurk.cpp: In function `int main()':
beurk.cpp:18: `string' undeclared (first use this function)
beurk.cpp:18: (Each undeclared identifier is reported only once for each
   function it appears in.)
beurk.cpp:18: parse error before `,' token
beurk.cpp:19: `t' undeclared (first use this function)
beurk.cpp:24: `cout' undeclared (first use this function)
beurk.cpp:37: `endl' undeclared (first use this function)
beurk.cpp:44: `cin' undeclared (first use this function)
beurk.cpp:167: `h' undeclared (first use this function)


 
bon j'arrete, je deviens lourd




 
pourquoi tas appele sa beurk .... =)
et soyez indulgent sa fait 4 semaines que j ai demarez le c++,
je trouve que j emen sort pas trop mal, alors il est moche mon code pkoa ?:(
 
 

Reply

Marsh Posté le 30-11-2002 à 00:16:34    

ben j'aime bien les
 
while(...)
{
 if(....)
 {...}
  else continue;
}
 
au fait, essaye '\t' pour voir, ca t'évitera de compter le nombres d'epsaces. et tu peux sans doute simplifier tout ca, parce que tes tests de 3 lignes  :ange:


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:19:08    

sinon pas la pein de donner des binaires, personne les essaiera jamais on est pas fou a ce point...


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:20:57    

Taz@PPC a écrit a écrit :

ben j'aime bien les
 
while(...)
{
 if(....)
 {...}
  else continue;
}
 
au fait, essaye '\t' pour voir, ca t'évitera de compter le nombres d'epsaces. et tu peux sans doute simplifier tout ca, parce que tes tests de 3 lignes  :ange:  




 
c ironique ?  :sarcastic:  :lol:  
je vais essayer de remplacer les if else if par des swich()
case .....
ca sera mieux ?

Reply

Marsh Posté le 30-11-2002 à 00:24:04    

non tu demandes des conseils je t'en donne.
 
au leiu de mette tes mois dans un swithc, declare tou simplement un tableau de string et voila months[0]=="January" months[11]=="December"
 
t'as juste a faire
 
MonthInLetter=months[i];
 
 
i=i+1  :non: préfère ++i ou i++
l=l-364 <=> l-=364
 
 
et au niveau algo, y a plein de chose a factoriser


Message édité par Taz@PPC le 30-11-2002 à 00:25:26

---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:24:33    

Taz@PPC a écrit a écrit :

sinon pas la pein de donner des binaires, personne les essaiera jamais on est pas fou a ce point...




comment ca des binaires ??  
ja ipas mis de test de binaire dans le prog

Reply

Marsh Posté le 30-11-2002 à 00:26:21    

Taz@PPC a écrit a écrit :

non tu demandes des conseils je t'en donne.
 
au leiu de mette tes mois dans un swithc, declare tou simplement un tableau de string et voila months[0]=="January" months[11]=="December"
 
t'as juste a faire
 
MonthInLetter=months[i];
 
 
i=i+1  :non: préfère ++i ou i++
l=l-364 <=> l-=364
 
 
et au niveau algo, y a plein de chose a factoriser




i++, c'est parfois dangereux
dans certaines boites, les conventions de codage interdisent le i++


---------------
Défiance (ou méfiance) est mère de sûreté  
Reply

Marsh Posté le 30-11-2002 à 00:26:24    

Taz@PPC a écrit a écrit :

non tu demandes des conseils je t'en donne.
 
au leiu de mette tes mois dans un swithc, declare tou simplement un tableau de string et voila months[0]=="January" months[11]=="December"
 
t'as juste a faire
 
MonthInLetter=months[i];
 
 
i=i+1  :non: préfère ++i ou i++
l=l-364 <=> l-=364
 
 
et au niveau algo, y a plein de chose a factoriser




ok thanks j essaye sa tt de suite

Reply

Marsh Posté le 30-11-2002 à 00:27:02    

charlene a écrit a écrit :

 
i++, c'est parfois dangereux
dans certaines boites, les conventions de codage interdisent le i++




 
 :lol:  :lol:  :lol:
j'attends ton exlication


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:27:32    

coulix a écrit a écrit :

 
comment ca des binaires ??  
ja ipas mis de test de binaire dans le prog




 
 
un binaire c un .exe
 
balance les sources, si on compile pas nous meme on veut pas


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 30-11-2002 à 00:27:48    

Taz@PPC a écrit a écrit :

 
 
 :lol:  :lol:  :lol:
j'attends ton exlication



+1


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 30-11-2002 à 00:31:47    

Leirn a écrit a écrit :

+1




 :non:
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
++


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:32:50    

iNbUsersWaiting++


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 30-11-2002 à 00:33:12    

Leirn a écrit a écrit :

iNbUsersWaiting++



:sleep:
 

Citation :

Activer la notification par email


 
bonne nuit  :hello:


Message édité par Taz@PPC le 30-11-2002 à 00:34:47

---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:34:49    

Taz@PPC a écrit a écrit :

 
 
 :lol:  :lol:  :lol:
j'attends ton exlication




exemple basique (volontairement) :
 

Code :
  1. #define square(x) (x)*(x)
  2. ...
  3. int i=1;
  4. int j = square(i++);


 
A ton avis, que vaut j ??


---------------
Défiance (ou méfiance) est mère de sûreté  
Reply

Marsh Posté le 30-11-2002 à 00:35:42    

et t'es sur que le problème vient de ++ ?  :heink:
 
 
 
 
 
 
 
 
 
 
 
 
 
pitié quelqu'un pour lui expliquer


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:35:47    

heu j ai fais ca
m[1]=="January";
m[2]=="Februray ";
m[3]=="March ";
m[4]=="April ";
m[5]=="May  ";
m[6]=="June ";
m[7]=="Jully ";
m[8]=="August ";
m[9]=="September ";
m[10]=="October ";
m[11]=="November ";
m[12]=="December ";
 
mais au resulta sa me marque genre 0*01261cf5465d comme mois y a mieux
 :sweat:  
why? :??:

Reply

Marsh Posté le 30-11-2002 à 00:36:31    

c'est quoi ces ==?


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:37:15    

Taz@PPC a écrit a écrit :

et t'es sur que le problème vient de ++ ?  :heink:
 
pitié quelqu'un pour lui expliquer



me prends pas pour une conne
ok, la macro est mal écrite
mais c'est des choses qui peuvent arriver, tu vas pas forcément vérifier toutes les déf. de macros que tu utilises
 
Je disais juste que parfois, le ++ est dangereux


---------------
Défiance (ou méfiance) est mère de sûreté  
Reply

Marsh Posté le 30-11-2002 à 00:37:17    

ta declaré m comme un tableau de string?


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 30-11-2002 à 00:37:49    

charlene a écrit a écrit :

me prends pas pour une conne
ok, la macro est mal écrite
mais c'est des choses qui peuvent arriver, tu vas pas forcément vérifier toutes les déf. de macros que tu utilises
 
Je disais juste que parfois, le ++ est dangereux




 
la kestion est: pkoi dangereux


---------------
"Je brandirai une épée d'orichalque, je m'assouvirai sur des Templiers." | "Avec dans son sillage l'Ombre du Diable, Leirn appelait les morts pour une danse macabre et déchainaît les horreurs de la nuit..."
Reply

Marsh Posté le 30-11-2002 à 00:39:25    

Leirn a écrit a écrit :

 
 
la kestion est: pkoi dangereux



je viens de te montrer un exemple


---------------
Défiance (ou méfiance) est mère de sûreté  
Reply

Marsh Posté le 30-11-2002 à 00:39:31    

charlene a écrit a écrit :

me prends pas pour une conne
ok, la macro est mal écrite
mais c'est des choses qui peuvent arriver, tu vas pas forcément vérifier toutes les déf. de macros que tu utilises
 
Je disais juste que parfois, le ++ est dangereux




 
 :heink: je te prends pas pour une conne, mais comme tu le dis , le problème vient des macros.
 
pour ma part, je les proscris complètement pour cette usage: je ne m'en sers que comme directive de pré-compilation


---------------
du bon usage de rand [C] / [C++]
Reply

Marsh Posté le 30-11-2002 à 00:40:15    

Leirn a écrit a écrit :

ta declaré m comme un tableau de string?




string m[13]; c ca non ?  :(

Reply

Marsh Posté le    

Reply

Sujets relatifs:

Leave a Replay

Make sure you enter the(*)required information where indicate.HTML code is not allowed