Posez votre question Signaler

Question sur un tableau à plusieur dimension en C

mickmac 330Messages postés jeudi 25 août 2011Date d'inscription 21 avril 2015Dernière intervention - Dernière réponse le 22 oct. 2012 à 15:53
Bonjour,
Bonjour,
J'ai un tableau de 7*7(Je parle en langage C) donc creer grâce à
char Tab [10][10]
Ensuite je rentre des vleurs dans ce tableau
Et je voudrais savoir comment je doit m'y prendre pour faire un Test qui renvoie Vrai si le tableau est plein(donc plus aucun zéro.
Je pense qu'il faut faire une boucle mais je n'ai pas encore vu comment marché un tableau à plusieurs dimensions
dois je faire une boucle avec i et j deux variables je creer un a initialisé à zéro auparavant comme celà?
for(i=0;i<=7;i++)
{
for(j=0;j<=7,j++)
{
if(Tab[i][j]=0)
a++;}
}
}
}
if (a=0)
{ printf("Vrai");}
Merci de votre réponse
Lire la suite 
Réponse
+0
moins plus
C'est pas trop mal, à part que les comparaisons se font avec == pas avec =

Mais ce n'est pas nécessaire d'initialiser tes cases à 0 si tu saisis déjà des valeurs dans les cases avant de faire ton test.

Remarque : un tableau 7x7 ça se fait entre i=0 et i<7 (pas i<=7)
Ajouter un commentaire
Réponse
+0
moins plus
Ok merci beaucoup Oui en effet pour le ==
Par contre pour le i<7 j'avais pas remarqué merci
Une autre question aussi qui n'a pas grand chose à voir

int i=0;
int valeur;
scanf("%d",&valeur);
switch(valeur)
{
case 1 : i++;

case 2 : i=2;

case 3 : i=++valeur;

default : i=(valeur>3?0:10);

C'est pour un td Je doit dire ce que renvoie i dans les cas ou valeur = 0 puis 1 puis 2 puis 3 puis 4 puis 5
pour 1 ça fait 1
pour 2 ça fait 2
pour 3 je pense que ça fait i+valeur=3
mais pour les autres cas, on utilise i=(valeur>3?0:10);
Mais je sais absolument pas ce que ça veut dire Dans le cours c'est pas marqué

Pouvez vous m'aider s'il vous plait
KX 11390Messages postés samedi 31 mai 2008Date d'inscription ContributeurStatut 20 avril 2015Dernière intervention - 21 oct. 2012 à 20:20
C'est l'opérateur ternaire, ces deux codes sont équivalents :

i = valeur>3 ? 0 : 10;

if (valeur>3)
    i = 0;
else
    i = 10;
Répondre
fiddy 10281Messages postés samedi 5 mai 2007Date d'inscription ContributeurStatut 20 avril 2015Dernière intervention - 21 oct. 2012 à 21:34
Attention, à utiliser des break; dans ton switch pour chacun de tes cases...
Répondre
Ajouter un commentaire
Réponse
+0
moins plus
Aussi je doit faire une procédure qui a partir d'un tableau de lettre minuscule calcule la fréquence d'apparition de chaque caractère du tableau et la stock dans un nouveau tableau freq['a',...,'z']

Moi j'avais fait un programme qui rent quand on tape un caractère combien de fois on vois se caractère


#include <stdio.h>
#include <stdlib.h>
#include <string.h>

int nb_occ(char Tab, char caractère)
int c,nboccurence = 0,
size = strlen(chaine);

for (c = 0 ; c < size ; c++)
{
if (chaine[c] == caractère)
nboccurence ++;
}

return nboccurence;
}

Et quand o l'utilise avec le main(je remplace le tableau par .... car on avait crée une fonction pour que l'utilisateur puisse le remplir

int main()
{
char Chaine[] =.....
int nb = nb_occurence(Chaine,'a');
printf("La chaine : '%s' contient %d fois le caractère 'a'.\n", Chaine,nb);

return 0;
}


Mais mon prof à dit que c'était pas ça qu'on voulais;d'ailleur il a pas tord
Mais je vois pas trop comment faire en faite

peut etre

void fréquence(table[],freq[])
{
int i=0
int j=0
int a=0
int b=0

for (j=97;j<=123;j++)
{
for(i=0;i<cpt,i++) //cpt c'est la taille de table[] on l'vait crer avant//
{
while(table[i]%j)
{ a++
}
}
freq[c]=a
c++
i=0
a=0
}

Est ce que ça marche? Il y a t-il plus économique?

Merci
KX 11390Messages postés samedi 31 mai 2008Date d'inscription ContributeurStatut 20 avril 2015Dernière intervention - 22 oct. 2012 à 15:53
"une procédure qui a partir d'un tableau de lettre minuscule calcule la fréquence d'apparition de chaque caractère du tableau"

Un bon début serait déjà de faire cette procédure, ce que je n'ai pas vu dans ton code (qui ne ressemble que très vaguement à du C)

void frequence(int freq[256], char tableau[], int tailleTableau);
Répondre
Ajouter un commentaire
Ce document intitulé «  Question sur un tableau à plusieur dimension en C  » issu de CommentCaMarche (www.commentcamarche.net) est mis à disposition sous les termes de la licence Creative Commons. Vous pouvez copier, modifier des copies de cette page, dans les conditions fixées par la licence, tant que cette note apparaît clairement.

Vous n'êtes pas encore membre ?

inscrivez-vous, c'est gratuit et ça prend moins d'une minute !

Les membres obtiennent plus de réponses que les utilisateurs anonymes.

Le fait d'être membre vous permet d'avoir un suivi détaillé de vos demandes.

Le fait d'être membre vous permet d'avoir des options supplémentaires.