Accueil > > > CALCUL AGE V2
CALCUL AGE V2
Information sur la source
Description
Calcul l'age en fonction des saisies utilisateur (année, mois, jour naissance) Prend en compte les années bissextiles, les mois à 30 et 31 jours. Cependant à l'affichage, un mois reste un mois (28, 29, 30 ou 31 peut importe), une année reste une année (365 ou 366 peu importe). J'ai pris cette décision car quand on donne son age, on se moque des années bissextiles. Quand on dit qu'on a 20 ans et 6 mois, on se moque que les 3 premiers soient de 30 ou 31 jours. Par ontre si vous voulez comptabiliser le nombre de jours vécus, je vous l'accorde c'est une autre histoire (voir source Calcul Age, la variable ageT_jours contient cette information).
Source
- /*
- TP7 Exercice Facultatif
- Nom : ERARD
- Prenom : Stéphane
- Fichier : main.cpp
- Date : dim 11 dec 2005
- */
- #include <iostream>
- #include <windows.h>
- using namespace std;
- void calculAge(int, int, int, SYSTEMTIME);
- void AfficherResultats(int, int, int);
- int retourneNbJoursMois(int, int, SYSTEMTIME);
- bool estBissextile(int);
- //rSaisieValide[...] pour recevoirSaisieValide
- int rSaisieValideAnnee(SYSTEMTIME);
- int rSaisieValideMois(int, SYSTEMTIME);
- int rSaisieValideJour(int, int, SYSTEMTIME);
- int rSaisieValideJours31(int, int, SYSTEMTIME);
- int rSaisieValideJours30(int, int, SYSTEMTIME);
- int rSaisieValideJoursBi(int, int, SYSTEMTIME);
-
-
- int main(){
- int sAnnee, sMois, sJour; //saisies utilisateur
- SYSTEMTIME st;
-
- GetSystemTime(&st);
- sAnnee = rSaisieValideAnnee(st);
- sMois = rSaisieValideMois(sAnnee, st);
- sJour = rSaisieValideJour(sAnnee, sMois, st);
-
- calculAge(sAnnee, sMois, sJour, st);
-
- return 0;
- }
- /* **** FONCTIONS **** */
- void calculAge(int annee, int mois, int jour, SYSTEMTIME st){
- int cAnnees=0, cMois=0, cJours=0;
- if (annee==st.wYear && mois==st.wMonth){
- cAnnees=0;
- cMois=0;
- cJours=st.wDay - jour;
- }
- else if (mois==st.wMonth && jour < st.wDay){
- cAnnees = st.wYear - annee;
- cMois = 0;
- cJours = st.wDay - jour;//jour - st.wDay;
- }
- else if (mois==st.wMonth && jour > st.wDay){
- cAnnees=st.wYear - annee;
- cMois = 0;
- cJours = st.wDay - jour;
- }
- else if (mois==st.wMonth && jour == st.wDay){
- cAnnees = st.wYear - annee;
- cMois = 0;
- cJours = 0;
- }
- else if (jour==st.wDay){
- cAnnees = st.wYear - annee;
- cMois = st.wMonth - mois;
- cJours = 0;
- }
- else if (annee==st.wYear){
- cAnnees=0;
- cMois = mois - st.wMonth + 1;
- cJours =retourneNbJoursMois(annee, mois, st) - jour;
- }
- else {
- cJours = retourneNbJoursMois(annee, mois, st) - jour;
- cMois = 12 - mois - 1;
- cAnnees = st.wYear - annee;
- }
- if (cJours < 0){
- //int nbJoursMaxMois = retourneNbJoursMois(annee, mois, st);
- int nbJoursMax = retourneNbJoursMois(annee, mois, st);
- cJours = nbJoursMax + cJours;
- cMois = cMois - 1;
- cAnnees -=1;
- }
- if (cMois < 0){
- cMois = 12 + cMois;
- }
- AfficherResultats(cAnnees, cMois, cJours);
- }
-
- /* void AfficherResultats(int annees, int mois, int jours){
- @params: int annee, int mois, int jours
- @return: void
- Description: Cette fonction formatte l'affichage des parametres en
- fonction de ceux-ci.
-
- */
- void AfficherResultats(int annees, int mois, int jours){
- if (jours == 0){
- if (mois == 0){
- if (annees==1)
- cout << "\nVous avez 1 an! Noyeux Janniversaire !";
- else
- cout << "\nVous avez " << annees << " ans!";
- }
- else
- {
- if (annees==0)
- cout << "\nVous avez " << mois << " mois!";
- else if (annees==1)
- cout << "\nVous avez 1 an et " << mois << " mois!";
- else
- cout << "\nVous avez " << annees << " et " << mois << "!";
- }
- }
- else
- {
- if (jours == 1){
- if (mois ==0){
- if (annees==0)
- cout << "\nVous avez 1 jour!";
- else if (annees==1) cout << "\nVous avez 1 an et 1 jour!";
- else cout << "\nVous avez " << annees << " et 1 jour!";
- }
- else
- {
- if (annees==0)
- cout << "\nVous avez " << mois << " mois et 1 jour!";
- else if (annees==1) cout << "\nVous avez 1 an, " << mois
- << " mois et 1 jour!";
- else cout << "\nVous avez " << annees << " ans, " << mois
- << " mois et 1 jour!";
- }
- }
- else
- {
- if (mois==0){
- if (annees==0)
- cout << "\nVous avez " << jours << " jours!";
- else if (annees==1)
- cout << "\nVous avez 1 an et " << jours << " jours:";
- else
- cout << "\nVous avez " << annees << " ans et " << jours
- << " jours!";
- }
- else
- {
- if (annees==0)
- cout << "\nVous avez " << mois << " mois et " << jours
- << " jours!";
- else if (annees==1)
- cout << "\nVous avez 1 an, " << mois << " mois et "
- << jours << " jours!";
- else
- cout << "\nVous avez " << annees << " ans, " << mois
- << " mois et " << jours << " jours!";
- }
- }
- }
- }
-
- /* int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
- @params: int annee, int mois
- @return: int nombre de jours restants dans le mois de l'année spécifiée.
- Description: Cette fonction a besoin de l'année car si le mois est 2
- il faut savoir si l'année est bissextile ou pas.
- */
- int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
- switch(mois){
- case 1: return 31;break;
- case 2: if (estBissextile(annee)) return 29; else return 28;break;
- case 3: return 31;break;
- case 4: return 30;break;
- case 5: return 31;break;
- case 6: return 30;break;
- case 7: return 31;break;
- case 8: return 31;break;
- case 9: return 30;break;
- case 10: return 31;break;
- case 11: return 30;break;
- case 12: return 31;break;
- }
- }
-
- /* bool estBissextile(int annee){
- @params: int annee
- @return: bool
- Description: Si l'année fournit en parametre est bissextile
- renvoi TRUE, sinon FALSE
- */
- bool estBissextile(int annee){
- //Une année bisextile est une année divisible par 4
- //sauf si elle est divisible par 100 auquel cas elle doit être divisible par 400.
- if (annee%100==0 && annee%400==0) return false;
- else if (annee%4==0) return true;
- }
-
- /* int rSaisieValideAnnee(SYSTEMTIME st)
- @param: SYSTEMTIME st
- @return:int annee
- Description: renvoi une saisie utilisateur valide (l'année ici)
- */
- int rSaisieValideAnnee(SYSTEMTIME st){
- int annee;
- do {
- cout << "Veuillez saisir votre annee de naissance (inferieur a " << st.wYear << "):";
- cin >> annee;
- }while (!(annee <= st.wYear ));
- return annee;
- }
-
- /* int rSaisieValideMois(int annee, SYSTEMTIME st)
- @param: int annee, SYSTEMTIME st
- @return: int mois
- Description: renvoi une saisie utilisateur valide (ici le mois)
- valide dans le sens ou si l'année specifiée avant EST
- l'année en cours, l'utilisateur ne peut renseigner un mois
- supérieur au mois actuel
- */
- int rSaisieValideMois(int annee, SYSTEMTIME st){
- int mois;
- do {
- cout << "Veuillez saisir votre mois de naissance ";
- if (annee == st.wYear) cout << "(inferieur a " << st.wMonth << ")";
- cout << ":";
- cin >> mois;
- if (annee==st.wYear && mois > st.wMonth) mois = 13;
- }while (!(mois<=12 && mois>=1));
- return mois;
- }
-
- /* int rSaisieValideJour(int annee, int mois, SYSTEMTIME st)
- @param: int annee, int mois, SYSTEMTIME st
- @return: int jour
- Description: renvoi une saisie utilisateur valide (ici le jour)
- valide dans le sens où la fonction prête attention au nombre de
- jours dans le mois, et si l'année est bissextile pour le mois de
- fevrier
- */
- int rSaisieValideJour(int annee, int mois, SYSTEMTIME st){
- int jour=0, limit=0;
- if (annee == st.wYear && mois == st.wMonth){
- do{
- cout << "Veuillez saisir votre jour de naissance (inferieur a " << st.wDay << "):";
- cin >> jour;
- }while (!(jour > 0 && jour < st.wDay));
- }
- else{
- switch (mois){
- //mois à 31
- case 1:jour=rSaisieValideJours31(annee, mois, st);break;
- case 3:jour=rSaisieValideJours31(annee, mois, st);break;
- case 5:jour=rSaisieValideJours31(annee, mois, st);break;
- case 7:jour=rSaisieValideJours31(annee, mois, st);break;
- case 8:jour=rSaisieValideJours31(annee, mois, st);break;
- case 10:jour=rSaisieValideJours31(annee, mois, st);break;
- case 12:jour=rSaisieValideJours31(annee, mois, st);break;
- //mois à 30
- case 4:jour=rSaisieValideJours30(annee, mois, st);break;
- case 6:jour=rSaisieValideJours30(annee, mois, st);break;
- case 9:jour=rSaisieValideJours30(annee, mois, st);break;
- case 11:jour=rSaisieValideJours30(annee, mois, st);break;
- //mois de fevrier verifie si année bissextile
- case 2:
- jour=rSaisieValideJoursBi(annee, mois, st);break;
- }
- }
- return jour;
- }
-
- /* int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st)
- @param: int annee, int mois, SYSTEMTIME st
- @return: int jour
- Description: renvoi une saisie utilisateur valide (ici le jour)
- comprise entre 1 et 31
- */
- int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st){
- int jour;
- do {
- cout << "Veuillez saisir votre jour de naissance (entre 1 et 31):";
- cin >> jour;
- }while(!(jour>=1 && jour<=31));
- return jour;
- }
-
- /* int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st)
- @param: int annee, int mois, SYSTEMTIME st
- @return: int jour
- Description: renvoi une saisie utilisateur valide (ici le jour)
- comprise entre 1 et 30
- */
- int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st){
- int jour;
- do {
- cout << "Veuillez saisir votre jour de naissance (entre 1 et 30):";
- cin >> jour;
- }while(!(jour>=1 && jour<=30));
- return jour;
- }
-
- /* int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st)
- @param: int annee, int mois, SYSTEMTIME st
- @return: int jour
- Description: renvoi une saisie utilisateur valide (ici le jour)
- comprise entre 1 et 28/29 suivant si année bissextile.
- */
- int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st){
- int jour;
- if (estBissextile(annee)){
- do{
- cout << "Veuillez saisir votre jour de naissance (entre 1 et 29):";
- cin >> jour;
- }while(!(jour>=1 && jour<=29));
- return jour;
- }
- else {
- do{
- cout << "Veuillez saisir votre jour de naissance (entre 1 et 28):";
- cin >> jour;
- }while(!(jour>=1 && jour<=28));
- return jour;
- }
- }
- /* **** FIN FONCTIONS **** */
/*
TP7 Exercice Facultatif
Nom : ERARD
Prenom : Stéphane
Fichier : main.cpp
Date : dim 11 dec 2005
*/
#include <iostream>
#include <windows.h>
using namespace std;
void calculAge(int, int, int, SYSTEMTIME);
void AfficherResultats(int, int, int);
int retourneNbJoursMois(int, int, SYSTEMTIME);
bool estBissextile(int);
//rSaisieValide[...] pour recevoirSaisieValide
int rSaisieValideAnnee(SYSTEMTIME);
int rSaisieValideMois(int, SYSTEMTIME);
int rSaisieValideJour(int, int, SYSTEMTIME);
int rSaisieValideJours31(int, int, SYSTEMTIME);
int rSaisieValideJours30(int, int, SYSTEMTIME);
int rSaisieValideJoursBi(int, int, SYSTEMTIME);
int main(){
int sAnnee, sMois, sJour; //saisies utilisateur
SYSTEMTIME st;
GetSystemTime(&st);
sAnnee = rSaisieValideAnnee(st);
sMois = rSaisieValideMois(sAnnee, st);
sJour = rSaisieValideJour(sAnnee, sMois, st);
calculAge(sAnnee, sMois, sJour, st);
return 0;
}
/* **** FONCTIONS **** */
void calculAge(int annee, int mois, int jour, SYSTEMTIME st){
int cAnnees=0, cMois=0, cJours=0;
if (annee==st.wYear && mois==st.wMonth){
cAnnees=0;
cMois=0;
cJours=st.wDay - jour;
}
else if (mois==st.wMonth && jour < st.wDay){
cAnnees = st.wYear - annee;
cMois = 0;
cJours = st.wDay - jour;//jour - st.wDay;
}
else if (mois==st.wMonth && jour > st.wDay){
cAnnees=st.wYear - annee;
cMois = 0;
cJours = st.wDay - jour;
}
else if (mois==st.wMonth && jour == st.wDay){
cAnnees = st.wYear - annee;
cMois = 0;
cJours = 0;
}
else if (jour==st.wDay){
cAnnees = st.wYear - annee;
cMois = st.wMonth - mois;
cJours = 0;
}
else if (annee==st.wYear){
cAnnees=0;
cMois = mois - st.wMonth + 1;
cJours =retourneNbJoursMois(annee, mois, st) - jour;
}
else {
cJours = retourneNbJoursMois(annee, mois, st) - jour;
cMois = 12 - mois - 1;
cAnnees = st.wYear - annee;
}
if (cJours < 0){
//int nbJoursMaxMois = retourneNbJoursMois(annee, mois, st);
int nbJoursMax = retourneNbJoursMois(annee, mois, st);
cJours = nbJoursMax + cJours;
cMois = cMois - 1;
cAnnees -=1;
}
if (cMois < 0){
cMois = 12 + cMois;
}
AfficherResultats(cAnnees, cMois, cJours);
}
/* void AfficherResultats(int annees, int mois, int jours){
@params: int annee, int mois, int jours
@return: void
Description: Cette fonction formatte l'affichage des parametres en
fonction de ceux-ci.
*/
void AfficherResultats(int annees, int mois, int jours){
if (jours == 0){
if (mois == 0){
if (annees==1)
cout << "\nVous avez 1 an! Noyeux Janniversaire !";
else
cout << "\nVous avez " << annees << " ans!";
}
else
{
if (annees==0)
cout << "\nVous avez " << mois << " mois!";
else if (annees==1)
cout << "\nVous avez 1 an et " << mois << " mois!";
else
cout << "\nVous avez " << annees << " et " << mois << "!";
}
}
else
{
if (jours == 1){
if (mois ==0){
if (annees==0)
cout << "\nVous avez 1 jour!";
else if (annees==1) cout << "\nVous avez 1 an et 1 jour!";
else cout << "\nVous avez " << annees << " et 1 jour!";
}
else
{
if (annees==0)
cout << "\nVous avez " << mois << " mois et 1 jour!";
else if (annees==1) cout << "\nVous avez 1 an, " << mois
<< " mois et 1 jour!";
else cout << "\nVous avez " << annees << " ans, " << mois
<< " mois et 1 jour!";
}
}
else
{
if (mois==0){
if (annees==0)
cout << "\nVous avez " << jours << " jours!";
else if (annees==1)
cout << "\nVous avez 1 an et " << jours << " jours:";
else
cout << "\nVous avez " << annees << " ans et " << jours
<< " jours!";
}
else
{
if (annees==0)
cout << "\nVous avez " << mois << " mois et " << jours
<< " jours!";
else if (annees==1)
cout << "\nVous avez 1 an, " << mois << " mois et "
<< jours << " jours!";
else
cout << "\nVous avez " << annees << " ans, " << mois
<< " mois et " << jours << " jours!";
}
}
}
}
/* int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
@params: int annee, int mois
@return: int nombre de jours restants dans le mois de l'année spécifiée.
Description: Cette fonction a besoin de l'année car si le mois est 2
il faut savoir si l'année est bissextile ou pas.
*/
int retourneNbJoursMois(int annee, int mois,SYSTEMTIME st_){
switch(mois){
case 1: return 31;break;
case 2: if (estBissextile(annee)) return 29; else return 28;break;
case 3: return 31;break;
case 4: return 30;break;
case 5: return 31;break;
case 6: return 30;break;
case 7: return 31;break;
case 8: return 31;break;
case 9: return 30;break;
case 10: return 31;break;
case 11: return 30;break;
case 12: return 31;break;
}
}
/* bool estBissextile(int annee){
@params: int annee
@return: bool
Description: Si l'année fournit en parametre est bissextile
renvoi TRUE, sinon FALSE
*/
bool estBissextile(int annee){
//Une année bisextile est une année divisible par 4
//sauf si elle est divisible par 100 auquel cas elle doit être divisible par 400.
if (annee%100==0 && annee%400==0) return false;
else if (annee%4==0) return true;
}
/* int rSaisieValideAnnee(SYSTEMTIME st)
@param: SYSTEMTIME st
@return:int annee
Description: renvoi une saisie utilisateur valide (l'année ici)
*/
int rSaisieValideAnnee(SYSTEMTIME st){
int annee;
do {
cout << "Veuillez saisir votre annee de naissance (inferieur a " << st.wYear << "):";
cin >> annee;
}while (!(annee <= st.wYear ));
return annee;
}
/* int rSaisieValideMois(int annee, SYSTEMTIME st)
@param: int annee, SYSTEMTIME st
@return: int mois
Description: renvoi une saisie utilisateur valide (ici le mois)
valide dans le sens ou si l'année specifiée avant EST
l'année en cours, l'utilisateur ne peut renseigner un mois
supérieur au mois actuel
*/
int rSaisieValideMois(int annee, SYSTEMTIME st){
int mois;
do {
cout << "Veuillez saisir votre mois de naissance ";
if (annee == st.wYear) cout << "(inferieur a " << st.wMonth << ")";
cout << ":";
cin >> mois;
if (annee==st.wYear && mois > st.wMonth) mois = 13;
}while (!(mois<=12 && mois>=1));
return mois;
}
/* int rSaisieValideJour(int annee, int mois, SYSTEMTIME st)
@param: int annee, int mois, SYSTEMTIME st
@return: int jour
Description: renvoi une saisie utilisateur valide (ici le jour)
valide dans le sens où la fonction prête attention au nombre de
jours dans le mois, et si l'année est bissextile pour le mois de
fevrier
*/
int rSaisieValideJour(int annee, int mois, SYSTEMTIME st){
int jour=0, limit=0;
if (annee == st.wYear && mois == st.wMonth){
do{
cout << "Veuillez saisir votre jour de naissance (inferieur a " << st.wDay << "):";
cin >> jour;
}while (!(jour > 0 && jour < st.wDay));
}
else{
switch (mois){
//mois à 31
case 1:jour=rSaisieValideJours31(annee, mois, st);break;
case 3:jour=rSaisieValideJours31(annee, mois, st);break;
case 5:jour=rSaisieValideJours31(annee, mois, st);break;
case 7:jour=rSaisieValideJours31(annee, mois, st);break;
case 8:jour=rSaisieValideJours31(annee, mois, st);break;
case 10:jour=rSaisieValideJours31(annee, mois, st);break;
case 12:jour=rSaisieValideJours31(annee, mois, st);break;
//mois à 30
case 4:jour=rSaisieValideJours30(annee, mois, st);break;
case 6:jour=rSaisieValideJours30(annee, mois, st);break;
case 9:jour=rSaisieValideJours30(annee, mois, st);break;
case 11:jour=rSaisieValideJours30(annee, mois, st);break;
//mois de fevrier verifie si année bissextile
case 2:
jour=rSaisieValideJoursBi(annee, mois, st);break;
}
}
return jour;
}
/* int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st)
@param: int annee, int mois, SYSTEMTIME st
@return: int jour
Description: renvoi une saisie utilisateur valide (ici le jour)
comprise entre 1 et 31
*/
int rSaisieValideJours31(int annee, int mois, SYSTEMTIME st){
int jour;
do {
cout << "Veuillez saisir votre jour de naissance (entre 1 et 31):";
cin >> jour;
}while(!(jour>=1 && jour<=31));
return jour;
}
/* int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st)
@param: int annee, int mois, SYSTEMTIME st
@return: int jour
Description: renvoi une saisie utilisateur valide (ici le jour)
comprise entre 1 et 30
*/
int rSaisieValideJours30(int annee, int mois, SYSTEMTIME st){
int jour;
do {
cout << "Veuillez saisir votre jour de naissance (entre 1 et 30):";
cin >> jour;
}while(!(jour>=1 && jour<=30));
return jour;
}
/* int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st)
@param: int annee, int mois, SYSTEMTIME st
@return: int jour
Description: renvoi une saisie utilisateur valide (ici le jour)
comprise entre 1 et 28/29 suivant si année bissextile.
*/
int rSaisieValideJoursBi(int annee, int mois, SYSTEMTIME st){
int jour;
if (estBissextile(annee)){
do{
cout << "Veuillez saisir votre jour de naissance (entre 1 et 29):";
cin >> jour;
}while(!(jour>=1 && jour<=29));
return jour;
}
else {
do{
cout << "Veuillez saisir votre jour de naissance (entre 1 et 28):";
cin >> jour;
}while(!(jour>=1 && jour<=28));
return jour;
}
}
/* **** FIN FONCTIONS **** */
Conclusion
si bugs, suggestions, ... n'hésitez pas!
Sources du même auteur
Sources de la même categorie
Commentaires et avis
|
Derniers Blogs
SESSION SILVERLIGHT 5 3D : SLIDES ET DEMOSSESSION SILVERLIGHT 5 3D : SLIDES ET DEMOS par Groc
Durant les techdays, j'ai eu le plaisir d'animer une session sur Silverlight 5 et la 3D avec Simon Ferquel. Comme promis, voici nos slides et mes démos (celles avec le viper BSG) ici et là. Pour mémoire, les démos utilisent toutes le viper BSG...
Cliquez pour lire la suite de l'article par Groc [TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES[TECHDAYS 2012] SESSION WEBMATRIX 2 : LE COUTEAU SUISSE GRATUIT POUR VOS DéVELOPPEMENTS WEB - SLIDES par gpommier
Suite à la session que j'ai présenté sur WebMatrix 2, vous pouvez trouver les slides ici, ainsi que les démos en packages nuget : démos1 et démos2 J'en profite pour remercier chaleureusement tous ceux qui sont venus très nombreux à cette sess...
Cliquez pour lire la suite de l'article par gpommier [SHAREPOINT] LES SESSIONS TECHDAYS 2012.[SHAREPOINT] LES SESSIONS TECHDAYS 2012. par Patrick Guimonet
Voici donc pour ceux qui n'ont pas pu venir, ou ceux qui n'ont pas pu toutes les suivre la liste des sessions SharePoint aux TechDays 2012, que je mettrais à jour dès que les liens des vidéo seront disponibles. Ou ici : http...
Cliquez pour lire la suite de l'article par Patrick Guimonet TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3TECHDAYS PARIS 2012 : SESSION PLEINIèRE JOUR 3 par ROMELARD Fabrice
Speaker: Bernard Ourghanlian Cette session est comme chaque jour transmise en live par BrainSonic, et j'ai donc suivi cette troisième pleinière par ce moyen sur mon iPad . Elle est dédiée comme chaque année à la mise en perspective de l'é...
Cliquez pour lire la suite de l'article par ROMELARD Fabrice MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE !MISHRA READER : UN LECTEUR RSS TRèS ZUNE STYLE EN OPEN SOURCE ! par Vko
Hier durant une session dédiée aux Techdays 2012, j'ai eu le plaisir d'annoncer la sortie de la Béta 2 de Mishra Reader. C'est quoi ? Pour les utilisateurs, c'est une vraie expérience de lecture de flux RSS sur Windows. Rien à voir avec les produit...
Cliquez pour lire la suite de l'article par Vko
Logiciels
Tribler (2012)TRIBLER (2012)Tribler est un client pair à pair (P2P/Peer-to-Peer) open source avec la capacité de regarder des... Cliquez pour télécharger Tribler OneSwarm (2012)ONESWARM (2012)Le peer-to-peer qui protège votre vie privée, c'est OneSwarm.
Ce logiciel de peer-to-peer crypté... Cliquez pour télécharger OneSwarm PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO (V8.4)PONAMEDIA TV DEVIENS HELLLOOO FLASH
LA TV SUR VOTRE ORDINATEUR.
Toute une plateforme Multi... Cliquez pour télécharger PONAMEDIA PREMIUM - HELLLOOO FLASH DEMO Academy System (17.2.1.0)ACADEMY SYSTEM (17.2.1.0)Logiciel de gestion des établissements.
- élèves/étudiants (inscription, dossier, absence...)
-... Cliquez pour télécharger Academy System Easy-Planning (1.0.0.1)EASY-PLANNING (1.0.0.1)Basé sur les mêmes principes que MyPlanning, Easy-Planning permet de créer des plannings sous la ... Cliquez pour télécharger Easy-Planning
|