Advertisement
VonSchalk

mycalc

Feb 17th, 2019
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
Java 3.14 KB | None | 0 0
  1. package com.example.mycalc;
  2.  
  3.  
  4. import android.os.Bundle;
  5. import android.support.v7.app.AppCompatActivity;
  6. import android.view.View;
  7. import android.widget.Button;
  8. import android.widget.EditText;
  9. import android.widget.TextView;
  10.  
  11. import static java.lang.Integer.parseInt;
  12.  
  13. public class MainActivity extends AppCompatActivity {
  14.  
  15.     @Override
  16.     protected void onCreate(Bundle savedInstanceState) {
  17.         super.onCreate(savedInstanceState);
  18.         setContentView(R.layout.activity_main);
  19.  
  20.         // Connect button
  21.         Button calcButton = findViewById(R.id.calcButton);
  22.         calcButton.setOnClickListener(new View.OnClickListener() {
  23.             @Override
  24.             public void onClick(View view) {
  25.  
  26.                 // Initialize text-fields
  27.                 final EditText assignmentOneInput = findViewById(R.id.assignmentOne);
  28.                 EditText assignmentTwoInput = findViewById(R.id.assignmentTwo);
  29.                 EditText assignmentThreeInput = findViewById(R.id.assignmentThree);
  30.                 EditText examMarkInput = findViewById(R.id.examMark);
  31.                 TextView displayYearMarkOutput = findViewById(R.id.displayYearMark);
  32.                 TextView showMark = findViewById(R.id.showMark);
  33.                 TextView displayDistinctions = findViewById(R.id.displayDistinctions);
  34.  
  35.                 // Convert integers to strings
  36.                 int fieldOne = parseInt(assignmentOneInput.getText().toString());
  37.                 int fieldTwo = parseInt(assignmentTwoInput.getText().toString());
  38.                 int fieldThree = parseInt(assignmentThreeInput.getText().toString());
  39.                 int fieldFour = parseInt(examMarkInput.getText().toString());
  40.                 //String myData1 = assignmentOneInput.getText().toString();
  41.                 //int myInt = Integer.parseInt(myData1);
  42.                 // Form validation
  43.  
  44.                 if (assignmentTwoInput.getText().toString().trim().isEmpty() || (parseInt(assignmentOneInput.getText().toString())>100)) {
  45.                     assignmentOneInput.setError("Please enter a number between 0 and 100.");
  46.                 }
  47.  
  48.                 else if (assignmentTwoInput.getText().toString().trim().isEmpty() || parseInt(assignmentTwoInput.getText().toString())>100) {
  49.                     assignmentTwoInput.setError("Please enter a number between 0 and 100.");
  50.                 }
  51.  
  52.                 else if (assignmentThreeInput.getText().toString().trim().isEmpty() || parseInt(assignmentThreeInput.getText().toString())>100) {
  53.                     assignmentThreeInput.setError("Please enter a number between 0 and 100.");
  54.                 }
  55.  
  56.                 else if (examMarkInput.getText().toString().trim().isEmpty() || parseInt(examMarkInput.getText().toString())>100) {
  57.                     examMarkInput.setError("Please enter a number between 0 and 100.");
  58.                 }
  59.                 else
  60.                     assignmentOneInput.setText("");
  61.  
  62.  
  63.                 //Calculate results
  64.                 double yearMark = fieldOne * .15 + fieldTwo * .35 + fieldThree * .50;
  65.                 double finalMark = yearMark * .49 + fieldFour * .51;
  66.  
  67.                 // Determine grade
  68.                 if (finalMark < 50) {
  69.                     displayDistinctions.setText("F");
  70.                 } if (finalMark < 75) {
  71.                     displayDistinctions.setText("P");
  72.                 } else {
  73.                     displayDistinctions.setText("D");
  74.                 }
  75.  
  76.                 // Convert double to int
  77.                 int outPut = (int) yearMark;
  78.  
  79.                 // Display results
  80.                 displayYearMarkOutput.setText( "Year mark is " + outPut + "%");
  81.                 showMark.setText("Final mark is " + (int)finalMark + "%");
  82.             }
  83.         });
  84.     }
  85. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement