Forum |  HardWare.fr | News | Articles | PC | S'identifier | S'inscrire | Shop Recherche
2143 connectés 

  FORUM HardWare.fr
  Programmation
  C

  (^o^)coucou tout le monde(^o^)

 


 Mot :   Pseudo :  
 
Bas de page
Auteur Sujet :

(^o^)coucou tout le monde(^o^)

n°1695635
carriebrad​shaw
Posté le 01-03-2008 à 20:04:36  profilanswer
 

Bonjour,
Voilà je suis nouvelle sur ce forum et j'ai un gros problème:
Je fais des cours d'informatique language C mais on est 20 (oui je vous assure) dans la classe et le prof est complètement débordé qui fait qu'il va vite sur les corrections et j'ai rien compris à 3 exercices:
 
Recherche:
Ecrire un programme qui crée un tableau de n cases. Les n cases seront alors remplies avec des caractères demandés à l'utilisateur.
Le programme demandera à l'utilisateur quel est le caractère à rechercher. Le programme parcoura le tableau et affichera "Oui, je suis dedans" ou "Non, je ne suis pas là" en fonction de la présence ou de l'absence de ce caractère
 
Addition/multiplication:
Ecrire un programme qui crée 2 tableaux de n*n cases. Les cases des tableaux sont respectivement remplies des valeurs de la table d'addition et multiplication de n. Votre programme permettra d'afficher les 2 tableaux à la suite
 
Matrix:
Ecrire un programme qui crée 2 tableaux de n*n cases.Les tableaux seront alors remplis des valeurs aléatoires comprises entre 0 et 100. Votre programme permettra d'afficher la somme de ces 2 matrices
 
Comme vous le voyez ce sont des exercices très difficiles et qu'en plus de ça le prof va trop vite alors...je suis à la limite d'être dégoûtée de l'informatqiue
Ce serait vraiment gentil de me répondre parce que j'ai essayé de les refaire mais rien ne se compile et les matrices je n'y arrive vraiment pas :cry:  
 
Merci

mood
Publicité
Posté le 01-03-2008 à 20:04:36  profilanswer
 

n°1695643
TotalRecal​l
Posté le 01-03-2008 à 21:02:38  profilanswer
 


Déjà il faut que tu saches que les règles du forum proscrivent le travail fait à la place des autres, si tu laisses ton topic comme ça il sera fermé. Tu devrais au minimum nous présenter tes tentatives infructueuses, code à l'appui. Et détailler les problèmes rencontrés.

 

A ce sujet, pourrais tu nous en dire plus ? Tu parles "d'exercices très difficiles" alors que c'est franchement trivial. Pourtant je ne suis pas un génie (loin de là :d).
Es tu au moins sûre d'avoir compris les énoncés ?
Le premier fait appel aux E/S utilisateur, c'est pas très rigolo en C. Par contre le second est un pur exo d'algorithmie qui devrait être à la portée de tout collégien qui réfléchit un petit peu.
Pour le second n'hésite pas à faire le tableau sur papier, ça t'aidera sans doute à écrire la version informatique ensuite.


Message édité par TotalRecall le 01-03-2008 à 21:05:50

---------------
Topic .Net - C# @ Prog
n°1695644
_darkalt3_
Proctopathe
Posté le 01-03-2008 à 21:20:14  profilanswer
 

Déjà, colle ton code, on le commentera.


---------------
Töp of the plöp
n°1695649
_mumu_
Posté le 01-03-2008 à 21:55:19  profilanswer
 

Tiens pour l'addition des matrices. Inspires toi de ce code pour faire les deux autres.

Code :
  1. #include <stdio.h>
  2. #include <stdlib.h>
  3. #include <time.h>
  4. int **create_mat(int, int);
  5. void print_sum(int **, int **, int, int);
  6. void desalloc(int **, int);
  7. int main(int argc, char **argv){
  8.   int **mat1, **mat2;
  9.  
  10.   if (argc != 3){
  11.     printf("Usage : %s n p\n", argv[0]);
  12.     return -1;
  13.   }
  14.   mat1 = create_mat(atoi(argv[1]), atoi(argv[2]));
  15.   mat2 = create_mat(atoi(argv[1]), atoi(argv[2]));
  16.   print_sum(mat1, mat2, atoi(argv[1]), atoi(argv[2]));
  17.   desalloc(mat1, atoi(argv[1]));
  18.   desalloc(mat2, atoi(argv[1]));
  19.   return 0;
  20. }
  21. int **create_mat(int n, int p){
  22.   int **matrice;
  23.   int i, j;
  24.  
  25.   matrice = (int **) malloc(n * sizeof(int *));
  26.   for (i=0; i<n; i++)
  27.     matrice[i] = (int *) malloc(p * sizeof(int));
  28.   srand(time(NULL));
  29.   for (i=0; i<n; i++){
  30.     for (j=0; j<p; j++)
  31.       matrice[i][j] = rand()%101;
  32.   }
  33.   return matrice;
  34. }
  35. void print_sum(int **mat1, int **mat2, int n, int p){
  36.   int i,j;
  37.   for (i=0; i<n; i++){
  38.     for (j=0; j<p; j++)
  39.       printf("%d ", mat1[i][j]+mat2[i][j]);
  40.     printf("\n" );
  41.   }
  42. }
  43. void desalloc(int **mat, int n){
  44.   int i;
  45.   for (i=0; i<n; i++)
  46.     free(mat[i]);
  47.   free(mat);
  48. }


 
PS : je n'ai pas commenté donc si tu as des questions sur le code, n'hésite pas.


Message édité par _mumu_ le 01-03-2008 à 22:00:03

---------------
"Software is like sex. It's better when it's free..."   Linus Torvalds
n°1695654
carriebrad​shaw
Posté le 01-03-2008 à 22:42:42  profilanswer
 

TotalRecall le prend pas comme ça si tu veux mon code le voilà:
 
Recherche:
int tab[n];  
 
printf("combien de cases voulez vous remplir?" );
cin>>nb;  
for(i=0, i<nb, i++)  
{  
printf("Veuillez saisir le caractères present a la case" );
cin>>tab[i];  
}  
i=0;  
printf("quelle caractère voulez vous rechercher" );  
cin>>car;  
do  
{  
if(tab[i]==car)  
{  
printf("oui je suis dedans" );  
}  
else  
{  
printf("non je ne suis pas dedans" );  
}  
}  
while(i<nb);
 
Voilà!!!!

n°1695663
TotalRecal​l
Posté le 01-03-2008 à 23:29:35  profilanswer
 

carriebradshaw a écrit :

TotalRecall le prend pas comme ça si tu veux mon code le voilà:
 
Recherche:
int tab[n];  
 
printf("combien de cases voulez vous remplir?" );
cin>>nb;  
for(i=0, i<nb, i++)  
{  
printf("Veuillez saisir le caractères present a la case" );
cin>>tab[i];  
}  
i=0;  
printf("quelle caractère voulez vous rechercher" );  
cin>>car;  
do  
{  
if(tab[i]==car)  
{  
printf("oui je suis dedans" );  
}  
else  
{  
printf("non je ne suis pas dedans" );  
}  
}  
while(i<nb);
 
Voilà!!!!


Je te faisais juste connaître les règles du forum, n'y vois aucune attaque ;)
 
Remarques sur ton code :  
"cin" c'est pas du C !!
Tu devrais t'assurer que la valeur saisie pour nb n'est pas supérieure à n, sinon tu vas dépasser la taille de ton tableau et planter le programme.  
De manière générale tu devrais contrôler tes saisies utilisateurs, parce que là tu lui fais aveuglément confiance.
 
La fin de ton programme n'est pas correcte, tu fais un "do ... while(i<nb)" mais à aucun moment tu n'incrémentes i !! Ton truc te fait une boucle infinie je me trompe ?


---------------
Topic .Net - C# @ Prog
n°1695720
Ace17
Posté le 02-03-2008 à 09:54:05  profilanswer
 

carriebradshaw a écrit :

TotalRecall le prend pas comme ça


TotalRecall n'a pas ete mechant. Manifestement tu n'as pas lu les regles du forum, car ton topic en enfreint plusieurs (titre explicite, resolution d'exercices...)... et si un moderateur passe par la tu risques fort que ton sujet soit ferme.
 

n°1695740
Elmoricq
Modérateur
Posté le 02-03-2008 à 11:56:31  profilanswer
 

Yo [:elmoricq]

 

Je suis un modérateur, et je passais par là. Sujet fermé pour les raisons données ci-dessus, merci de lire les règles de la catégorie Programmation.


Message édité par Elmoricq le 02-03-2008 à 11:57:16

Aller à :
  FORUM HardWare.fr
  Programmation
  C

  (^o^)coucou tout le monde(^o^)

 

Sujets relatifs
[CSS] unecarte du monde clicable avec rollover sur chaque pays survoléListe des villes du monde
Le CMS le plus simple au monde existe-t'il?Perdu dans un monde étrange fait de chiffres et de lettres
Simuler un clic de souris le plus simplement du monde a une heure PrêsMon site ne s'affiche pas chez tout le monde :(
Recherche du monde pour projet de logiciel cspremonade dans un monde a partir dun jeux
coller un monde dans un jeux deja faitbonjour tout l monde
Plus de sujets relatifs à : (^o^)coucou tout le monde(^o^)


Copyright © 1997-2025 Groupe LDLC (Signaler un contenu illicite / Données personnelles)