Algo additionner ligne tableau
Fermé
spinaroony
Messages postés
42
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
13 janvier 2020
-
31 janv. 2011 à 10:59
spinaroony Messages postés 42 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 13 janvier 2020 - 1 févr. 2011 à 09:32
spinaroony Messages postés 42 Date d'inscription lundi 15 juin 2009 Statut Membre Dernière intervention 13 janvier 2020 - 1 févr. 2011 à 09:32
A voir également:
- Algo additionner ligne tableau
- Tableau croisé dynamique - Guide
- Formule excel pour additionner plusieurs cellules - Guide
- Tableau ascii - Guide
- Tableau word - Guide
- Aller à la ligne excel - Guide
6 réponses
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
Modifié par JooS le 31/01/2011 à 12:32
Modifié par JooS le 31/01/2011 à 12:32
Algo Adition Variables totalL, totalC : reel; mat:Tableau[20][20] reel; i,j,L,C : Entier; Debut totalL=0; totalC=0; //Initialisation des variables //Infos et messages pour l'utilisateur Ecrire("Donnez le nombre de ligne ainsi que le nombre de colonne"); Lire(L,C); Ecrire("Veuillez entrer les", C*L ,"nombre(s) à insérer dans le tableau : "); //Créer le tableau Pour i <- 1 à L Faire Pour j <- 1 à C Faire Lire(mat[i][j]); Fait Fait //Afficher le tableau Pour i <- 1 à L Faire Pour j <- 1 à C Faire Ecrire(mat[i][j]); Fait Fait //Additionner les cases selon les lignes Pour i <- 1 à L Faire Pour j <- 1 à C Faire totalL <- totalL + mat[i][j]; Fait Ecrire("Total de la ligne ", i ," est ",totalL); totalL=0; Fait //Additionner les cases selon les colonnes Pour j <- 1 à C Faire Pour i <- 1 à L Faire totalC <- totalC + mat[i][j]; Fait Ecrire("Total de la colonne ", j ," est ",totalC); totalC=0; Fait Fin
spinaroony
Messages postés
42
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
13 janvier 2020
Modifié par spinaroony le 31/01/2011 à 14:43
Modifié par spinaroony le 31/01/2011 à 14:43
Merci.
Mais j'ai du mal à comprendre, la taille du tableau (N) est un seul chiffre, le tableau semble donc être un carré.
Le total des lignes est appelé N+1.
Les cellules sont appelés N², si je marque pour les lignes mon tab[10][10] :
pour i de 1 à n faire
N+1 <- N² + i++
//donc le N² c'est la cellule de gauche (mais es-ce qu'il prend la bonne??) + le i++ veut dire qu'il prend la suivant jusqu'à 10, de toute façon si la personne met 5 au départ, ça fera +0 jusqu'à 10.
j++
//pour lui dire de passer en-dessous
fin pour
J'ai compris ce qu'il fallait faire mais je n'arrive pas sortir une formule, c'est clairement mon problème.
Tu peux encore prendre de ton temps pour m'expliquer si c'est faux, s'il te plaît ?
Mais j'ai du mal à comprendre, la taille du tableau (N) est un seul chiffre, le tableau semble donc être un carré.
Le total des lignes est appelé N+1.
Les cellules sont appelés N², si je marque pour les lignes mon tab[10][10] :
pour i de 1 à n faire
N+1 <- N² + i++
//donc le N² c'est la cellule de gauche (mais es-ce qu'il prend la bonne??) + le i++ veut dire qu'il prend la suivant jusqu'à 10, de toute façon si la personne met 5 au départ, ça fera +0 jusqu'à 10.
j++
//pour lui dire de passer en-dessous
fin pour
J'ai compris ce qu'il fallait faire mais je n'arrive pas sortir une formule, c'est clairement mon problème.
Tu peux encore prendre de ton temps pour m'expliquer si c'est faux, s'il te plaît ?
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
Modifié par JooS le 31/01/2011 à 15:40
Modifié par JooS le 31/01/2011 à 15:40
Pour commencer, ou est ce que t'as appris tout ce que t'as dis??
Bon j'explique du mieux que je peut, mais je crois pas que tu comprendra... :) mais bref...
La taille du tableau?, ça depend de ce que tu veut faire, si tu declare une varibale ainsi Tableau[10], alors il va crée un tableau unidimensionnel de 10 cellules, soit, il y aura qu'une seule ligne, et 10 colonnes), mais toi, t'as citer "lignes et colonnes", donc une matrice, alors tu doit la declarer ainsi Tableau[10][20] ou Tableau[10,20], alors il va créer un tableau de 10 lignes et de 20 colonnes...soit 200 cellules...
Exemple, Si tu veut créer un tableau a 3 dimensions, tu n'as qu'a faire Tableau[10][20][10],
Je comprend pas ce que tu veut dire par N+1, ou N², je vois pas le rapport...
Tu peut pas écrire N² pour designer une cellule, ça veut rien dire...
Il ne va pas forcement jusqu'à 10, il va jusqu'à la valeur de n, exemple, si t'as taper 5, il partira de 1 jusqu'à 5...
Ré-explication...
Etape 1 : Nom de l'algorithme.
Etape 2 : Déclaration des variables.
Etape 2.1 : totalL et totalC sont des variables a valeurs réelles.
Etape 2.2 : mat est un tableau a 2 dimensions(ligne, colonne ou longeur, largeur), et a valeurs réelles.
Etape 2.3 : i,j,C,L sont des variables a valeurs entières
Etape 3 : Début de l'algorithme.
Etape 4 : Initialisation des variables...
Etape 5 : Infos et messages pour l'utilisateurs...
Etape 6 : Lire les valeurs entrer par l'utilisateurs, ....L,C sont les deux variables qui representerons la valeurs de la taille du tableau que l'utilisateurs aura choisis, si il a tape 5 4, alors 5 sera stocké dans L, et 4 dans C, soi, ce tableau aura 5 lignes et 4 colonnes...
Etape 7 : Aprés que l'utilisateurs ait entré 2 nombres L et C, on lui affichera un autre message pour entrer les valeurs dans le tableau, soi, si l'utilisateur avait entrer 2 2, alors le tableau aura 2 lignes et 2 colonnes, soi, 4 cellules (C*L=2*2=4), alors il devra entrer 4 nombres pour pouvoir continuer...
Etape 8 : Créer le tableau
Etape 8.1 : On crée une boucle qui se chargera de créer les lignes du tableau en fonction du nombre L entré par l'utilisateur.
Etape 8.2 : On crée une deuxième boucle qui est imbriqué dans la première et qui se chargera de créer les colonnes du tableau en fonction du nombre C entré par l'utilisateur.
Etape 8.3 : Exemple, quand la boucle commence, i=1 et j=1, si l'utilisateur avait entré 2 3, alors i<L soi (1<2) VRAI, alors il entre dans la boucle, il trouve une deuxième boucle, alors il teste la condition j<C soi (1<3) VRAI, alors il entre dans la boucle, il trouve ainsi la fonction lire, alors il attend que vous entrer un nombre quelconque, et il le stockera dans la première cellule, en fonction de i et j qui sont ici égale a... i=1 et j=1 (qui signifie la première cellule), puis il remonte dans la même boucle, il incrémente le j de 1, (j était 1 donc il deviens 2) et il reteste la condition, elle sera toujours vrai car 2<3 VRAI, alors il relit la boucle une nouvelle fois, il trouve la fonction lire, alors il attend que vous entrer un nombre, et il stockera ce nombre dans la (deuxième)cellule 1 2 (i=1, j=2).......etc
Etape 9 : Afficher le tableau
Il refera la même chose que dans l'étape 8, sauf qu'au lieu de créer les cellules et stockés les nombres que vous auriez entrer, il ne fera que les afficher(écrire =montrer) et afficher les nombres que vous avez entrer...
Etape 10 : Additionner les cases selon les lignes...
Encore une boucle, alors il se positionne en premier dans la première cellule(i=1, j=1), il lit la valeur se trouvant dans cette cellule puis l'additionne a la valeur de totalL(qui est égale a 0 au début), puis remonte la boucle, il incrémente j, il entre de nouveau dans la meme boucle en testant la condition(si i < L=2) VRAI, alors il entre et additionne la valeur de la deuxième cellule(i=1, j=2) a la valeur de totalL(qui cette fois est egale a la valeur de la première cellule), puis il remonte la boucle, et refait la meme chose(il additionne la cellule suivante a totalL ) jusqu'a que la condition devient FAUSSE, alors il ecrit la valeur final de totalL, qui représente a la fin de la boucle le total de la premiere ligne, et remonte a nouveau a la première boucle, puis refait la même chose sauf que dans ce cas, il le fait dans la deuxième ligne, et ainsi de suite...
Etape 11 : Additionner les cases selon les colonnes
Même chose que dans l'Etape 10, sauf que dans ce cas c'est pas des lignes qu'il s'occupera mais des colonnes.
Bon j'explique du mieux que je peut, mais je crois pas que tu comprendra... :) mais bref...
La taille du tableau?, ça depend de ce que tu veut faire, si tu declare une varibale ainsi Tableau[10], alors il va crée un tableau unidimensionnel de 10 cellules, soit, il y aura qu'une seule ligne, et 10 colonnes), mais toi, t'as citer "lignes et colonnes", donc une matrice, alors tu doit la declarer ainsi Tableau[10][20] ou Tableau[10,20], alors il va créer un tableau de 10 lignes et de 20 colonnes...soit 200 cellules...
Exemple, Si tu veut créer un tableau a 3 dimensions, tu n'as qu'a faire Tableau[10][20][10],
Je comprend pas ce que tu veut dire par N+1, ou N², je vois pas le rapport...
Tu peut pas écrire N² pour designer une cellule, ça veut rien dire...
Il ne va pas forcement jusqu'à 10, il va jusqu'à la valeur de n, exemple, si t'as taper 5, il partira de 1 jusqu'à 5...
Ré-explication...
Etape 1 : Nom de l'algorithme.
Etape 2 : Déclaration des variables.
Etape 2.1 : totalL et totalC sont des variables a valeurs réelles.
Etape 2.2 : mat est un tableau a 2 dimensions(ligne, colonne ou longeur, largeur), et a valeurs réelles.
Etape 2.3 : i,j,C,L sont des variables a valeurs entières
Etape 3 : Début de l'algorithme.
Etape 4 : Initialisation des variables...
Etape 5 : Infos et messages pour l'utilisateurs...
Etape 6 : Lire les valeurs entrer par l'utilisateurs, ....L,C sont les deux variables qui representerons la valeurs de la taille du tableau que l'utilisateurs aura choisis, si il a tape 5 4, alors 5 sera stocké dans L, et 4 dans C, soi, ce tableau aura 5 lignes et 4 colonnes...
Etape 7 : Aprés que l'utilisateurs ait entré 2 nombres L et C, on lui affichera un autre message pour entrer les valeurs dans le tableau, soi, si l'utilisateur avait entrer 2 2, alors le tableau aura 2 lignes et 2 colonnes, soi, 4 cellules (C*L=2*2=4), alors il devra entrer 4 nombres pour pouvoir continuer...
Etape 8 : Créer le tableau
Etape 8.1 : On crée une boucle qui se chargera de créer les lignes du tableau en fonction du nombre L entré par l'utilisateur.
Etape 8.2 : On crée une deuxième boucle qui est imbriqué dans la première et qui se chargera de créer les colonnes du tableau en fonction du nombre C entré par l'utilisateur.
Etape 8.3 : Exemple, quand la boucle commence, i=1 et j=1, si l'utilisateur avait entré 2 3, alors i<L soi (1<2) VRAI, alors il entre dans la boucle, il trouve une deuxième boucle, alors il teste la condition j<C soi (1<3) VRAI, alors il entre dans la boucle, il trouve ainsi la fonction lire, alors il attend que vous entrer un nombre quelconque, et il le stockera dans la première cellule, en fonction de i et j qui sont ici égale a... i=1 et j=1 (qui signifie la première cellule), puis il remonte dans la même boucle, il incrémente le j de 1, (j était 1 donc il deviens 2) et il reteste la condition, elle sera toujours vrai car 2<3 VRAI, alors il relit la boucle une nouvelle fois, il trouve la fonction lire, alors il attend que vous entrer un nombre, et il stockera ce nombre dans la (deuxième)cellule 1 2 (i=1, j=2).......etc
Etape 9 : Afficher le tableau
Il refera la même chose que dans l'étape 8, sauf qu'au lieu de créer les cellules et stockés les nombres que vous auriez entrer, il ne fera que les afficher(écrire =montrer) et afficher les nombres que vous avez entrer...
Etape 10 : Additionner les cases selon les lignes...
Encore une boucle, alors il se positionne en premier dans la première cellule(i=1, j=1), il lit la valeur se trouvant dans cette cellule puis l'additionne a la valeur de totalL(qui est égale a 0 au début), puis remonte la boucle, il incrémente j, il entre de nouveau dans la meme boucle en testant la condition(si i < L=2) VRAI, alors il entre et additionne la valeur de la deuxième cellule(i=1, j=2) a la valeur de totalL(qui cette fois est egale a la valeur de la première cellule), puis il remonte la boucle, et refait la meme chose(il additionne la cellule suivante a totalL ) jusqu'a que la condition devient FAUSSE, alors il ecrit la valeur final de totalL, qui représente a la fin de la boucle le total de la premiere ligne, et remonte a nouveau a la première boucle, puis refait la même chose sauf que dans ce cas, il le fait dans la deuxième ligne, et ainsi de suite...
Etape 11 : Additionner les cases selon les colonnes
Même chose que dans l'Etape 10, sauf que dans ce cas c'est pas des lignes qu'il s'occupera mais des colonnes.
//étape 1 Algo Adition //-------------------------------------------------------- //etape 2 Variables totalL, totalC : reel; //Etape 2.1 mat:Tableau[20][20] reel; //Etape 2.2 i,j,L,C : Entier; //Etape 2.3 //--------------------------------------------------------- //Etape 3 Debut //Etape 4 totalL=0; totalC=0; //Etape 5 Ecrire("Donnez le nombre de ligne ainsi que le nombre de colonne"); //Etape 6 Lire(L,C); //Etape 7 Ecrire("Veuillez entrer les", C*L ,"nombre(s) à insérer dans le tableau : "); //---------------------------------------------------------- //Etape 8 Pour i <- 1 à L Faire //Etape 8.1 Pour j <- 1 à C Faire //Etape 8.2 Lire(mat[i][j]); //Etape 8.3 Fait Fait //---------------------------------------------------------- //Etape 9 Pour i <- 1 à L Faire Pour j <- 1 à C Faire Ecrire(mat[i][j]); Fait Fait //----------------------------------------------------------- //Etape 10 Pour i <- 1 à L Faire Pour j <- 1 à C Faire totalL <- totalL + mat[i][j]; Fait Ecrire("Total de la ligne ", i ," est ",totalL); totalL=0; Fait //----------------------------------------------------------- //Etape 11 Pour j <- 1 à C Faire Pour i <- 1 à L Faire totalC <- totalC + mat[i][j]; Fait Ecrire("Total de la colonne ", j ," est ",totalC); totalC=0; Fait Fin
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
31 janv. 2011 à 15:43
31 janv. 2011 à 15:43
Tiens, voici le code traduit en langage C, t'aura peut etre une meilleur idée en le testant...
#include <stdio.h> void main() { float totalL=0,totalC=0,mat[20][20]; int i,j,L,C; printf("Entrer le nombre de lignes et de colonnes : "); scanf("%d%d",&L,&C); printf("Veuillez entrer les %d nombre(s) à inserer dans le tableau : ",L*C); for(i=1;i<=L;i++) { for(j=1;j<=C;j++) { scanf("%f",&mat[i][j]); } } printf("\n");//----------------------------------------------------- for(i=1;i<=L;i++) { for(j=1;j<=C;j++) { printf("%.2f\t",mat[i][j]); } printf("\n"); } printf("\n");//----------------------------------------------------- for(i=1;i<=L;i++) { for(j=1;j<=C;j++) { totalL=totalL+mat[i][j]; } printf("Total de la ligne %d est %f",i,totalL); totalL=0; printf("\n"); } printf("\n");//----------------------------------------------------- for(j=1;j<=C;j++) { for(i=1;i<=L;i++) { totalC=totalC+mat[i][j]; } printf("Total de la Colonne %d est %f",j,totalC); totalC=0; printf("\n"); } scanf("\n"); }
spinaroony
Messages postés
42
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
13 janvier 2020
Modifié par spinaroony le 1/02/2011 à 09:30
Modifié par spinaroony le 1/02/2011 à 09:30
<ital>Pour le N ou N² (...) c'était l'énoncé, j'ai simplement repris ce qui était marqué, pour ta question, j'essaye d'apprendre sur le net mais bon, c'est dur...
Je vais me pencher la-dessus ce soir, merci beaucoup.
Je vais me pencher la-dessus ce soir, merci beaucoup.
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
Modifié par JooS le 31/01/2011 à 18:25
Modifié par JooS le 31/01/2011 à 18:25
Est ce que l'énoncé se trouve sur le net...!!
Sinon, d'après moi...
N représente le nombre de lignes et le nombres de colonnes en même temps, donc si on peut dire ça, tu aura un carré a la fin... exemple, 5 lignes sur 5 colonnes...
Pour le N², je saisi pas son utilité...!!??
Pour le N+1, ben si t'as crée un tableau 5 sur 5, alors N+1 veut dire la cellule N°6, l'après dernière cellule d'une ligne quoi...
Même chose pour les colonnes, puisque le nombres de lignes est égale aux nombres de colonnes, alors N+1 voudrai dire l'après dernière cellules d'une colonne...
Pour le reste, ben c'est comme je t'ai montrer...
Bon courage...
PS: Pour bien comprendre l'algorithmique, il vaut mieux que tu l'associe a un langage quelconque, pour bien comprendre..., alors pour ma part je te conseille le C, va voir ici, y a des cours complet avec des exos corrigés, t'apprendra bien plus vite en pratiquant, et pour les tableaux, rend toi aux chapitre 7...
Sinon, d'après moi...
N représente le nombre de lignes et le nombres de colonnes en même temps, donc si on peut dire ça, tu aura un carré a la fin... exemple, 5 lignes sur 5 colonnes...
Pour le N², je saisi pas son utilité...!!??
Pour le N+1, ben si t'as crée un tableau 5 sur 5, alors N+1 veut dire la cellule N°6, l'après dernière cellule d'une ligne quoi...
Même chose pour les colonnes, puisque le nombres de lignes est égale aux nombres de colonnes, alors N+1 voudrai dire l'après dernière cellules d'une colonne...
Pour le reste, ben c'est comme je t'ai montrer...
Bon courage...
PS: Pour bien comprendre l'algorithmique, il vaut mieux que tu l'associe a un langage quelconque, pour bien comprendre..., alors pour ma part je te conseille le C, va voir ici, y a des cours complet avec des exos corrigés, t'apprendra bien plus vite en pratiquant, et pour les tableaux, rend toi aux chapitre 7...
spinaroony
Messages postés
42
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
13 janvier 2020
31 janv. 2011 à 22:35
31 janv. 2011 à 22:35
Il semblerait que ton code en C ne marche pas, j'ai testé avec visual studio, bon après je m'y connais pas des masses.
Merci pour toutes tes infos !
Merci pour toutes tes infos !
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
Modifié par JooS le 31/01/2011 à 23:50
Modifié par JooS le 31/01/2011 à 23:50
Ben c'est normal, je l'exécute sous Borland moi...donc ajoute quelque details et normalement ça y irai mieux...
Essaye ça...
Essaye ça...
// help.cpp : définit le point d'entrée pour l'application console. // #include "stdafx.h" #include <stdio.h> int _tmain(int argc, _TCHAR* argv[]) { float totalL=0,totalC=0,mat[20][20]; int i,j,L,C; printf("Entrer le nombre de lignes et de colonnes : "); scanf("%d%d",&L,&C); printf("Veuillez entrer les %d nombre(s) à inserer dans le tableau : ",L*C); for(i=1;i<=L;i++) { for(j=1;j<=C;j++) { scanf("%f",&mat[i][j]); } } printf("\n");//----------------------------------------------------- for(i=1;i<=L;i++) { for(j=1;j<=C;j++) { printf("%.2f\t",mat[i][j]); } printf("\n"); } printf("\n");//----------------------------------------------------- for(i=1;i<=L;i++) { for(j=1;j<=C;j++) { totalL=totalL+mat[i][j]; } printf("Total de la ligne %d est %f",i,totalL); totalL=0; printf("\n"); } printf("\n");//----------------------------------------------------- for(j=1;j<=C;j++) { for(i=1;i<=L;i++) { totalC=totalC+mat[i][j]; } printf("Total de la Colonne %d est %f",j,totalC); totalC=0; printf("\n"); } scanf("\n"); return 0; }
Vous n’avez pas trouvé la réponse que vous recherchez ?
Posez votre question
spinaroony
Messages postés
42
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
13 janvier 2020
1 févr. 2011 à 00:00
1 févr. 2011 à 00:00
1>exo.cpp(7): error C2061: erreur de syntaxe : identificateur '_TCHAR'
Il me met ça ? Mis bon ne te tracasse pas avec ça, c'est un peu du chinois quand je lis ça, je commencerais ton tuto et je vadrouillerais sur celui du siteduzero =)
Il me met ça ? Mis bon ne te tracasse pas avec ça, c'est un peu du chinois quand je lis ça, je commencerais ton tuto et je vadrouillerais sur celui du siteduzero =)
JooS
Messages postés
2468
Date d'inscription
mardi 22 janvier 2008
Statut
Membre
Dernière intervention
8 juin 2016
228
1 févr. 2011 à 00:19
1 févr. 2011 à 00:19
hmmm, enlève ce qu'il y a entre les parenthèses de tmain...
int argc, _TCHAR* argv[]
int argc, _TCHAR* argv[]
spinaroony
Messages postés
42
Date d'inscription
lundi 15 juin 2009
Statut
Membre
Dernière intervention
13 janvier 2020
1 févr. 2011 à 09:32
1 févr. 2011 à 09:32
Idem =P
Mais laisse je finirais bien par trouver^^
Mais laisse je finirais bien par trouver^^