Créer un tableau et supprimer une case sans décalage
Salut,
je suis étudiant en informatique L1 et débutant en langage de programmation C. Ayant une faible base en programmation (algorithme aussi) de tableau puisque ça fait une semaine qu'on a commencé ce chapitre.
Notre prof d'algorithmique nous a passé un devoir qui consiste à créer un tableau N élément de type entier, puis le programme doit supprimer le contenu d'une case MAIS il ne fera pas de décalage(la case restera vide).
Vous trouverez en bas le code que j'ai édité (incomplet) en langage C et un exemple de ce que le programme est censé afficher
PS: que ce soit en langage C ou en langage naturel, toute proposition est la bienvenue.
Merci
Le code :
Exemple du résultat attendu

je suis étudiant en informatique L1 et débutant en langage de programmation C. Ayant une faible base en programmation (algorithme aussi) de tableau puisque ça fait une semaine qu'on a commencé ce chapitre.
Notre prof d'algorithmique nous a passé un devoir qui consiste à créer un tableau N élément de type entier, puis le programme doit supprimer le contenu d'une case MAIS il ne fera pas de décalage(la case restera vide).
Vous trouverez en bas le code que j'ai édité (incomplet) en langage C et un exemple de ce que le programme est censé afficher
PS: que ce soit en langage C ou en langage naturel, toute proposition est la bienvenue.
Merci
Le code :
#include <stdio.h>
int main()
{
int i, n;
int ta[i];
/*i=compteur
ta=tableau
n=Nombre de case*/
printf("Saisir le nombre de case a creer\n");
scanf("%d", &n);
printf("Remplir le tab\n");
for(i=1;i<=n;i++)
{
scanf("%d", ta[i]);
}
return 0;
}
Exemple du résultat attendu

2 réponses
-
ContributeurIl y a quelques maladresses dans ton code.
Par exemple, en ligne 27if (pos >= nbr+1)
pourrait s'écrire plus simplementif (pos > nbr)
. Tu pourrais tester aussi le signe. L'affichage du tableau peut être amélioré avec des espaces ou des taburations (et/ou des barres verticales, etc.).
Sinon, le code fonctionne et il fonctionne déjà par décalage (qui est fait par la bouclewhile
en ligne 35 à 39).
Cependant, j'avais cru comprendre que tu ne devais pas faire de décalage, et juste disposer d'un moyen pour considérer un case existante comme étant "vide" de façon à ne pas l'afficher.
Dal