Rechercher : dans
Par :

Exercice c

Dernière réponse le 4 mar 2008 à 12:57:46 julie, le 1 déc 2007 à 18:23:20 
 Signaler ce message aux modérateurs

Bonjour, comment faire pour
1/compter le nombre de fois que le nombre encodé se trouve dans le tableau et afficher le nombre de fois qu'il apparait!
2/ afficher tous les nombres mais une seule fois chacun même si il se trouve plusieurs fois!
je suis bloqué pouvez vous m'aider ? merci


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


void main (void)
{
int tab[10][10];
int i,j,nbr,min,max,nbre;

srand(time(NULL));
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
nbr=rand()%100+1;
tab[i][j]= nbr;
printf( "%d\t", tab[i][j] );
}
printf("\n");
}

min=max=tab[0][0];

/* recherche du minimu et maximum*/
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
if( min > tab[i][j] )
{
min= tab[i][j];
}
if( max < tab[i][j] )
{
max=tab[i][j];
}
}





}

printf("le minimum est de : %d\n",min);
printf("le maximum est de: %d\n",max);

printf("\n");

/* demande d'un nombre et affichage plusieurs fois */

printf("entrez un nombre\n");
scanf("%d",&nbre);

if ( nbre == tab[i][j])

{
nbre = tab[i][j];
printf("nombre encoder a ete trouver %d fois",nbre);
}
else
printf("le nombre ne s'y trouve pas\n");

}

Configuration: Windows XP
Firefox 2.0.0.10

Meilleures réponses pour « exercice c » dans :
Compiler un programme en C avec Dev C++ sous Vista VoirIl est très probable que vous ayez des problèmes lors de la compilation d'une source C sous Vista avec Dev C++. Solution rapide de secours: le compilateur g++ Voici une astuce pour Dev-Cpp : Aller dans "Outils" -> "Options du compilateur" puis...
Exercice assembleur x86 nombre premier VoirIntroduction Notions abordées dans cet exercice Enoncé Rappel Corrigé Explication Introduction Ce petit exercice d'assembleur vise les architectures x86 (Processeurs Intel et Amd 32 bits) et utilise la syntaxe de Nasm, un assembleur...
Caractéristiques du langage C++ VoirMatériel requis Pour être en mesure de tester les exemples fournis dans ce livre, vous devez disposer d’un éditeur de texte pour saisir le texte des fichiers source et d’un compilateur pour construire le fichier exécutable à partir de ce fichier...
Les structures en langage C VoirDifférence entre une structure et un tableau Un tableau permet de regrouper des éléments de même type, c'est-à-dire codés sur le même nombre de bits et de la même façon. Toutefois, il est généralement utile de pouvoir rassembler des éléments de...

1

augustepirou, le 1 déc 2007 à 18:36:26

Bonjour,

pour le premier point tu as presque tout fait :

Declares une nouvelle variable integer puisque tu as 100 cellules à verifier
int nb_fois;

Initialises la variable
nb_fois=0

Effectue une boucle pour scruter le tableau entier
// Y a moyen de faire cela par pointeur
for(i=0;i<10;i++)
{
for(j=0;j<10;j++)
{
if ( nbre == tab[i][j]) nb_fois = nb_fois+1;
// if ( nbre == tab[i][j]) nb_fois++;
}
}

Cela ne me semble pas correct mais je ne trompe peut etre
min=max=tab[0][0];
//min=tab[0][0];
//max=min;

je te laisse 1 heure pour travailler sur le 2eme point

tchao

Répondre à augustepirou

2

lami20j, le 1 déc 2007 à 18:43:55

Salut,

essaie ça

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


int main (void)
{
  int tab[10][10];
  int i, j, nbr, min, max, nbre, freq;
  freq = 0;

  srand (time (NULL));
  for (i = 0; i < 10; i++){
    for (j = 0; j < 10; j++){
      nbr = rand () % 100 + 1;
      tab[i][j] = nbr;
      printf ("%d\t", tab[i][j]);
    }
      printf ("\n");
  }

  min = max = tab[0][0];

  /* recherche du minimu et maximum */
  for (i = 0; i < 10; i++){
    for (j = 0; j < 10; j++){
      if (min > tab[i][j])
        min = tab[i][j];
      if (max < tab[i][j])
        max = tab[i][j];
    }
  }

  printf ("le minimum est de : %d\n", min);
  printf ("le maximum est de: %d\n", max);

  printf ("\n");

  /* demande d'un nombre et affichage plusieurs fois */

  printf ("entrez un nombre\n");
  scanf ("%d", &nbre);

  for (i = 0; i < 10; ++i){
    for (j = 0; j < 10; ++j){
      if (nbre == tab[i][j])
        freq++;
    }
  }

  if (freq > 0)
    printf ("nombre encoder a ete trouver %d fois\n", freq);
  else
    printf ("le nombre ne s'y trouve pas\n");
  return 0;
}

lami20j

Répondre à lami20j

3

mype, le 1 déc 2007 à 19:46:05

Pour la deuxieme question tu peux mettre les nombres dans un tableau et avec une petite fonction tu fait en sorte qu'ils n'apparaissent qu'une seule fois

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

int cherche_nb(int nb, int t[100], int taille)
{
    int i;
    for(i=0;i<taille;i++)
        if(nb==t[i])
            return 0;
        return 1;
}

int main (void)
{
  int tab[10][10],tab_nb[100];
  int i, j, nbr, min, max, nbre, freq, nb_a_cher, taille=1;
  freq = 0;

  srand (time (NULL));
  for (i = 0; i < 10; i++){
    for (j = 0; j < 10; j++){
      nbr = rand () % 100 + 1;
      tab[i][j] = nbr;
      printf ("%d\t", tab[i][j]);
    }
      printf ("\n");
  }

  min = max = tab[0][0];

  /* recherche du minimu et maximum */
  for (i = 0; i < 10; i++){
    for (j = 0; j < 10; j++){
      if (min > tab[i][j])
        min = tab[i][j];
      if (max < tab[i][j])
        max = tab[i][j];
    }
  }

  printf ("le minimum est de : %d\n", min);
  printf ("le maximum est de: %d\n", max);

  printf ("\n");

  /* demande d'un nombre et affichage plusieurs fois */

  printf ("entrez un nombre\n");
  scanf ("%d", &nbre);

  for (i = 0; i < 10; ++i){
    for (j = 0; j < 10; ++j){
      if (nbre == tab[i][j])
        freq++;
    }
  }

  if (freq > 0)
    printf ("nombre encoder a ete trouver %d fois\n", freq);
  else
    printf ("le nombre ne s'y trouve pas\n");

    for(i=0;i<10;i++)
        for(j=0;j<10;j++)
        {
            nb_a_cher=tab[i][j];
            if(cherche_nb(nb_a_cher, tab_nb, taille) == 1)
            {
                tab_nb[taille-1]=nb_a_cher;
                taille++;
            }
        }
printf("\nvoici tous les nombres du tableau qui apparaissent au moins une fois :");
printf("\n");
    for(i=0;i<taille-1;i++)
        printf("%d ",tab_nb[i]);
  return 0;
}

Répondre à mype

4

 dijasma, le 4 mar 2008 à 12:57:46

Je cherche la programmation en c de nombre d'Armstrong

Répondre à dijasma