Partage
  • Partager sur Facebook
  • Partager sur Twitter

Gestion moyenne des étudiants

Sujet résolu
    12 juillet 2021 à 15:55:28

    Bonjour,

    Je suis débutant en programmation mobile et en programmation tout court, et j'ai un projet à rendre pour l'université, un projet qui consiste à créer des interfaces pour calculer la moyenne des modules et afficher ces modules sur une deuxième activité pour le calcul de la moyenne générale.

    En ce moment je galère de ouf sur une activity, à chaque fois que je clique sur le buttons calculer pour afficher la moyenne du module ça n'affiche rien ...

    Voilà mon code MainActivity2.java

    package com.example.myapplication;
    
    import androidx.appcompat.app.AppCompatActivity;
    
    import android.app.Notification;
    import android.content.Intent;
    import android.graphics.Color;
    import android.os.Bundle;
    import android.view.View;
    import android.widget.Button;
    import android.widget.EditText;
    import android.widget.ImageView;
    import android.widget.TextView;
    import android.widget.Toast;
    
    
    public class MainActivity2 extends AppCompatActivity {
    
        Button bt2;
        EditText td, tp, exam, res;
        TextView rsu;
        ImageView img;
    
    
    
        protected void onCreate(Bundle savedInstanceState) {
    
    
            super.onCreate(savedInstanceState);
    
            setContentView(R.layout.activity_main2);
    
            Intent i = getIntent();
    
            td = findViewById(R.id.editTextNumberDecimal);
            tp = findViewById(R.id.editTextNumberDecimal2);
            exam = findViewById(R.id.editTextNumberDecimal3);
            res = findViewById(R.id.editTextNumberDecimal5);
            rsu = findViewById(R.id.textView5);
    
    
            bt2 = (Button) findViewById(R.id.button2);
    
            bt2.setOnClickListener(new View.OnClickListener() {
    
                public void onClick(View v) {
    
    
                    if (td.getText().toString().isEmpty() && tp.getText().toString().isEmpty() && exam.getText().toString().isEmpty()) {
                        Toast.makeText(MainActivity2.this, "error", Toast.LENGTH_LONG).show();
                    } else {
                        if (!td.getText().toString().isEmpty() && tp.getText().toString().isEmpty() && exam.getText().toString().isEmpty()) {
                            double d = Float.parseFloat(td.getText().toString());
                            double p = Float.parseFloat(tp.getText().toString());
                            double e = Float.parseFloat(exam.getText().toString());
    
    
                            if ((d < 0 || p < 0 || e < 0) || (d > 20 || p > 20 || e > 20)) {
                                Toast.makeText(MainActivity2.this, "error", Toast.LENGTH_LONG).show();
                            } else {
    
                                double moy = ( ( d + p ) / 2 ) + ( e * 3 );
    
                                res.setText(Float.toString((float)moy));
    
    
                            }
    
    
                            }
                        }
                    }
                });
    
        }
    }
    
    
    

    Et voilà mon Activity_main2.xml

    <?xml version="1.0" encoding="utf-8"?>
    <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
        xmlns:app="http://schemas.android.com/apk/res-auto"
        xmlns:tools="http://schemas.android.com/tools"
        android:layout_width="match_parent"
        android:layout_height="match_parent"
        android:layout_gravity="center_horizontal|center_vertical"
        android:gravity="center_horizontal|center_vertical"
        tools:context=".MainActivity2">
    
        <LinearLayout
            android:layout_width="match_parent"
            android:layout_height="match_parent"
            android:background="@drawable/p1"
            android:gravity="center"
            android:orientation="vertical"
            tools:ignore="UselessParent">
    
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="horizontal"
                android:baselineAligned="false">
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:gravity="center_horizontal|center_vertical"
                    android:orientation="vertical">
    
                    <ImageView
                        android:id="@+id/imageView"
                        android:layout_width="match_parent"
                        android:layout_height="102dp"
                        android:layout_marginBottom="130dp"
                        android:contentDescription="TODO"
                        app:srcCompat="@drawable/images" />
                </LinearLayout>
            </LinearLayout>
    
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="horizontal"
                android:baselineAligned="false">
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_gravity="center_horizontal|left"
                    android:layout_weight="1"
                    android:gravity="center_horizontal|center_vertical"
                    android:orientation="vertical"
                    tools:ignore="NestedWeights,RtlHardcoded">
    
                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_gravity="center_horizontal|center_vertical"
                        android:layout_weight="1"
                        android:gravity="center_horizontal|center_vertical"
                        android:orientation="horizontal"
                        tools:ignore="NestedWeights">
    
                        <TextView
                            android:id="@+id/textView2"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:layout_weight="1"
                            android:gravity="center_horizontal|center_vertical"
                            android:text="@string/text_view1"
                            android:textSize="24sp"
                            android:textStyle="bold" />
    
                        <EditText
                            android:id="@+id/editTextNumberDecimal"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:layout_weight="1"
                            android:ems="10"
                            android:gravity="center_horizontal|center_vertical"
                            android:inputType="numberDecimal"
                            android:autofillHints="" />
                    </LinearLayout>
    
                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_gravity="center_horizontal|center_vertical"
                        android:layout_weight="1"
                        android:gravity="center_horizontal|center_vertical"
                        android:orientation="horizontal">
    
                        <TextView
                            android:id="@+id/textView3"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center_horizontal|center_vertical"
                            android:layout_weight="1"
                            android:gravity="center_horizontal|center_vertical"
                            android:text="@string/text_view2"
                            android:textSize="24sp"
                            android:textStyle="bold" />
    
                        <EditText
                            android:id="@+id/editTextNumberDecimal2"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:layout_gravity="center_horizontal|center_vertical"
                            android:layout_weight="1"
                            android:ems="10"
                            android:gravity="center_horizontal|center_vertical"
                            android:inputType="numberDecimal"
                            android:autofillHints="" />
                    </LinearLayout>
    
                    <LinearLayout
                        android:layout_width="match_parent"
                        android:layout_height="match_parent"
                        android:layout_gravity="center_horizontal|center_vertical"
                        android:layout_weight="1"
                        android:gravity="center_horizontal|center_vertical"
                        android:orientation="horizontal">
    
                        <TextView
                            android:id="@+id/textView4"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:layout_weight="1"
                            android:gravity="center_horizontal|center_vertical"
                            android:text="@string/text_view3"
                            android:textSize="24sp"
                            android:textStyle="bold" />
    
                        <EditText
                            android:id="@+id/editTextNumberDecimal3"
                            android:layout_width="0dp"
                            android:layout_height="wrap_content"
                            android:layout_weight="1"
                            android:ems="10"
                            android:gravity="center_horizontal|center_vertical"
                            android:inputType="numberDecimal" />
                    </LinearLayout>
                </LinearLayout>
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_gravity="center_horizontal|left"
                    android:layout_weight="1"
                    android:gravity="center_horizontal|center_vertical"
                    android:orientation="vertical">
    
                </LinearLayout>
            </LinearLayout>
    
            <Button
                android:id="@+id/button2"
                android:layout_width="104dp"
                android:layout_height="62dp"
                android:background="@drawable/button2"
                android:shadowColor="#3C3F41"
                android:text="@string/button2" />
    
            <TextView
                android:id="@+id/textView5"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="70dp"
                android:text="@string/text_view4"
                android:textSize="24sp"
                android:textStyle="bold" />
    
            <EditText
                android:id="@+id/editTextNumberDecimal5"
                android:layout_width="match_parent"
                android:layout_height="wrap_content"
                android:layout_marginTop="50dp"
                android:ems="10"
                android:inputType="numberDecimal" />
    
            <LinearLayout
                android:layout_width="match_parent"
                android:layout_height="match_parent"
                android:layout_weight="1"
                android:gravity="center_horizontal|center_vertical"
                android:orientation="horizontal">
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:orientation="vertical">
    
                </LinearLayout>
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:orientation="vertical">
    
                </LinearLayout>
    
                <LinearLayout
                    android:layout_width="match_parent"
                    android:layout_height="match_parent"
                    android:layout_weight="1"
                    android:orientation="vertical">
    
                </LinearLayout>
            </LinearLayout>
        </LinearLayout>
    

    Merciii beaucoup de m'aider, j'ai cherché partout mais je n'ai rien trouvé !


    • Partager sur Facebook
    • Partager sur Twitter
      14 juillet 2021 à 21:59:04

      Salut

      Je dirais que c’est de la faute du if ligne 52. Tu Check si un truc est vide pour ensuite utiliser la valeur du truc vide dans un calcul. Donc je pense que t’as oublié des ! un peu partout. 

      Supprime ce if, de ce que je comprend de tes intentions c’est juste une inversion du if ligne 49. Et vu que T’es deja dans le else, ce sera toujours vrai (donc inutile) (ou buggé)

      Dailleurs le if ligne 49 tu ne voulais pas mettre des OU plutôt ? Si y’en a qu’un de vide tu vas passer dans le else et à mon avis ça va pas tarder à crash. 

      Sinon, remarque générale mais les var1, var2, var3, d p, e, tp, td, etc en nom de variable c’est vraiment pas quelque chose à faire : nomme les trucs correctement tu vas vite finir completement perdu sinon. Le type d’une variable ne doit avoir aucune ambiguïté.  

      • Partager sur Facebook
      • Partager sur Twitter
        9 septembre 2021 à 20:21:55

        Geda a écrit:

        Salut

        Je dirais que c’est de la faute du if ligne 52. Tu Check si un truc est vide pour ensuite utiliser la valeur du truc vide dans un calcul. Donc je pense que t’as oublié des ! un peu partout. 

        Supprime ce if, de ce que je comprend de tes intentions c’est juste une inversion du if ligne 49. Et vu que T’es deja dans le else, ce sera toujours vrai (donc inutile) (ou buggé)

        Dailleurs le if ligne 49 tu ne voulais pas mettre des OU plutôt ? Si y’en a qu’un de vide tu vas passer dans le else et à mon avis ça va pas tarder à crash. 

        Sinon, remarque générale mais les var1, var2, var3, d p, e, tp, td, etc en nom de variable c’est vraiment pas quelque chose à faire : nomme les trucs correctement tu vas vite finir completement perdu sinon. Le type d’une variable ne doit avoir aucune ambiguïté.  


        Bonsoir, merci beaucoup à toi...tu m'a grave aidé, désolé d'avoir tardé à répondre...ce n'est qu'aujourd'hui que je reprends à la fac et du coup je me remets à finaliser l'application. Et du coup t'es conseils se sont montré avisé, l'appli calcul parfaitement la moyenne...tout est nickel ! 

        Merci encore à toi !

        • Partager sur Facebook
        • Partager sur Twitter

        Gestion moyenne des étudiants

        × Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
        × Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
        • Editeur
        • Markdown