Accueil Ti-Gen Foire Aux Questions Chat sur le chan #tigcc sur IRC
Liste des membres Rechercher Aide
Bienvenue Invité !   Se connecter             Mes sujets   
Administrer
0 membre(s) et 1 visiteur(s) actif(s) durant les 5 dernières minutes Utilisateurs actifs : Aucun membre + 1 visiteur
Avant de poster sur le forum, il y a des régles de bases à respecter pour une bonne entente et un respect de tous.
Veuillez lire la charte du forum.
  :: Index » Forum Ti68K » Programmation C » Probleme d'affichage (2 réponse(s))
./POST DE DEPART (post n°0)   Marquer comme non lu.
Fl0D Ecrit le: Dimanche 23 décembre 2007 à 22:02 Déconnecté(e)    Voir le profil de Fl0D Envoyer un email à Fl0D Visiter le site WEB de Fl0D Envoyer un message privé à Fl0D  

Bonjour,

J'essaye de revenir sur TIGCC, j'ai un peu du mal, je ne vois pas pourquoi mon premier printf qui fait "dim(Id) :" ne se place pas en haut à gauche lorsque j'appelle la fonction creer_mat_Id et se place un peu n'importe où. De plus en plus bas à chaque lancement de programme...

Voici mon main.c et mon matrice.c (mon matrice.h contient juste les prototypes de fonctions).

main.c
#define USE_TI89
#define MIN_AMS 100

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

#include <tigcclib.h>

#include "matrice.h"

int _main(void)
{
  int **mat, **mat_Id;
  int L,c,dim; /* L : nb lignes, c : nb colonnes */
  int i;
  
//  splash(); // Optionnel
  FontSetSys (F_4x6); 
  ClrScr();
  
  mat_Id=creer_mat_Id(&dim);
  printf("\nId =\n");
  afficher_mat(mat_Id,&dim,&dim);
  mat=creer_mat(&L,&c);
  printf("\nM =\n");
  afficher_mat(mat,&L,&c);
  ST_helpMsg("Appuyer sur une touche pour avoir la transposee...");
  ngetchx();
  transposer_mat(mat,&L,&c);
  
  /* Désalloue la mémoire */
  for (i=0 ; i<L ; i++)
    free(mat[i]);
  free(mat);
  
  ST_helpMsg("(c) Fl0d 2007.");
  //if (ngetchx()==KEY_ENTER)
  ngetchx();
  return 0;
}


matrice.c
#include <tigcclib.h>

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

#include "matrice.h"

int** creer_mat(int* L, int* c)
{

  int** mat;
  int i,j,n;
  printf("nb lignes : ");
  scanf("%d",L);
  printf("\nnb colonnes : ");
  scanf("%d",c);    
  /* Alloue la mémoire pour le tableau de tableau*/
  mat = (int**) malloc((*L) * sizeof(int*));
  
  /* Alloue la mémoire pour chaque tableau (chaque ligne)*/
  for (i=0 ; i<*L ; i++)
    mat[i] = (int*)malloc(*c*sizeof(int));

  for (i=0 ; i<*L ; i++)
  {
    for (j=0 ; j<*c ; j++)
    {
      printf("\nvaleur de M[%d,%d] : ",i+1,j+1);
      scanf("%d",&n);
      mat[i][j]=n;
    }
  }

  return mat;
  
}


int** creer_mat_Id(int* dim)
{

  int** mat_Id;
  int i,j;
  printf("dim(Id) : ");
  scanf("%d", dim);
  
  mat_Id = (int**) malloc((*dim) * sizeof(int*));
  
  for (i=0 ; i<*dim ; i++)
    mat_Id[i] = (int*)malloc(*dim*sizeof(int));

  for (i=0 ; i<*dim ; i++)
  {
    for (j=0 ; j<*dim ; j++)
    {
      if (i!=j)
        mat_Id[i][j]=0;
      else
        mat_Id[i][j]=1;
    }
  }

  return mat_Id;
  
}


void afficher_mat(int **mat,int *L, int *c)
{

  int i,j;
  for (i=0 ; i<*L ; i++)
  {
    printf("[");
    for (j=0 ; j<*c ; j++)
    {
      printf(" %d ",mat[i][j]);
    }
    printf("]\n");
  }  
  
}


void transposer_mat(int **mat,int *L, int *c)
{

  int i,j;
  printf("T_M =\n");
  for (i=0 ; i<*c ; i++)
  {
    printf("[");
    for (j=0 ; j<*L ; j++)
    {
      printf(" %d ",mat[j][i]);
    }
    printf("]\n");
  }    

}


Je pense que j'utilise également des librairies pas judicieusement aussi ^^

Merci de votre aide.
Programmeur : Ma page
    
./Post n°1   Marquer comme non lu.
Kevin Kofler Ecrit le: Dimanche 23 décembre 2007 à 23:26 Déconnecté(e)    Voir le profil de Kevin Kofler Envoyer un email à Kevin Kofler Visiter le site WEB de Kevin Kofler Envoyer un message privé à Kevin Kofler  


Utilise clrscr à la place de ClrScr. clrscr = ClrScr + remise à zéro de la position du curseur.
Membre de l'équipe de TIGCC: http://tigcc.ticalc.org
Mainteneur du portage Linux/Unix de TIGCC: http://tigcc.ticalc.org/linux/
Membre de l'équipe de CalcForge: http://www.calcforge.org:70/

Participez à la reprise de Ti-Gen!
    
./Post n°2   Marquer comme non lu.
Fl0D Ecrit le: Dimanche 23 décembre 2007 à 23:43 Déconnecté(e)    Voir le profil de Fl0D Envoyer un email à Fl0D Visiter le site WEB de Fl0D Envoyer un message privé à Fl0D  

Merci beaucoup ;)

Tout mon baratin pour ça ><
Programmeur : Ma page
    
  :: Index » Forum Ti68K » Programmation C » Probleme d'affichage (2 réponse(s))
Pages : 1/1     « [1] » »|

.Répondre à ce sujet
Les boutons de code
[B]old[I]talic[U]nderline[S]trikethrough[L]ine Flip Hori[Z]ontallyFlip [V]erticallySha[D]ow[G]low[S]poilerCode [G][C]ite
Bullet [L]istList Item [K] Link [H][E]mail[P]icture SmileysHelp
Couleurs :
Saisissez votre message
Activer les smileys
     

Forum de Ti-Gen v3.0 Copyright ©2004 by Geoffrey ANNEHEIM
Webmaster: Kevin KOFLER, Content Admins: list, Server Admins: Tyler CASSIDY and Kevin KOFLER, DNS Admin: squalyl
Page générée en 39.22ms avec 18 requetes