Se connecter

Informatique

Programmation

Sujet : Un peu d'aide programmation en C...
1
AgentCastolo
Niveau 10
17 novembre 2019 à 15:32:34

Salut !
Je suis en L3 Génie Civil et j'ai des cours d'informatique....on arrive à la fin et je dois coder un programme qui fait un peu de résistance des matériaux.
Enfin bref c'est pas du tout mon domaine de prédilection le codage, je déteste ça au max. Mais pas le choix faut bien le faire.

J'ai une structure "force" qui contient différentes composantes et j'ai donc crée une fonction qui demande à l'utilisateur de renseigner ces composantes.
Comment puis-je faire pour ensuite, dans une autre fonction, réutiliser les valeurs rentrées par l'utiliser pour faire des calculs ?

Ma fonction de saisie :

 

int Saisir_forceponctuelle(forcePC* fpc)
{
    float a=0;
    printf("\nEntrer la valeur en KN de la composante horizontale de la force ponctuelle  : ");

    scanf("%f",&a);
 (*fpc).Pix=a;
    printf("Pix=%f kN\n",a);
    printf("\nEntrer la valeur en KN de la composante verticale de la force ponctuelle  :");
    scanf("%f",&a);
 (*fpc).Piy=a;
    printf("Piy=%f kN\n",a);

    do
    {
    printf("\nEntrer la valeur en m de l'abcisse de la charge par rapport a l'origine de la poutre (comprise en 0 et 10m) :\n");
    scanf("%f",&a);
 (*fpc).xPi=a;
    printf("\nxPi=%f m\n",a);

    if(a<0||a>10)
    {
        printf("\nERREUR ! L'abcisse de votre force n'est pas valide ! Reessayez.\n");
    }

    }while(a<0||a>10);
    return 0;
}

Les composantes que je souhaite utiliser sont Pix, Piy et xPi.
Et ensuite j'ai commencé ça dans ma fonction de calcul :


int cas1_pc(forcePC* fpc)
{

    int Ray;
    int Rby;
    int Rbx;


    forcePC fpc1, fpc2;

    Saisir_forceponctuelle(&fpc1);

    printf("\t\n\n...............CALCUL DES REACTIONS D'APPUIS...............\n");

   Rbx=(*fpc).Pix;
    printf("\n\tRbx=%f KN", Rbx);

    return 0;
}

Ce qui me pose problème, c'est à la fin. Je veux que Rbx soit égal à la valeur Pix rentrée par l'utilisateur.
Donc j'ai écris l'égalité puis le printf pour afficher la valeur, sauf que ça m'affiche 0 à chaque fois.

Je sais pas si je suis très clair mais est ce que quelqu'un peut m'aider ? ça m'a l'air vraiment con :hap:

godrik
Niveau 22
17 novembre 2019 à 18:25:02

Saisir_forceponctuelle(&fpc1);

Ca, ca ecrit dans fpc1.

Rbx=(*fpc).Pix;

Ca, ca lit depuis fpc.

Donc forcement, ca n'affiche pas ce que tu veux. change en:

Rbx=fpc1.Pix;

Et tu auras ce que tu cherchais.

AgentCastolo
Niveau 10
18 novembre 2019 à 15:28:38

Le 17 novembre 2019 à 18:25:02 godrik a écrit :

Saisir_forceponctuelle(&fpc1);

Ca, ca ecrit dans fpc1.

Rbx=(*fpc).Pix;

Ca, ca lit depuis fpc.

Donc forcement, ca n'affiche pas ce que tu veux. change en:

Rbx=fpc1.Pix;

Et tu auras ce que tu cherchais.

Ok merci ! Pas facile de tout combiner :hap:

1
Sujet : Un peu d'aide programmation en C...
   Retour haut de page
Consulter la version web de cette page