Program pobiera od użytkownika wartości konkretnych współczynników, które występują we wzorze ogólnym funkcji kwadratowej, i na ich podstawie wyznacza jedno miejsce zerowe, jeśli delta wynosi 0, dwa miejsca zerowe, jeśli delta jest większa od 0, i brak rozwiązań, gdy mniejsza od 0. Ponadto gdy współczynnik a wynosi 0, program nie wykonuje żadnego działania oprócz komunikatu.
Plik główny MainActivity.java:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 | package com.example.admin.app; import android.support.v7.app.ActionBarActivity; import android.os.Bundle; import android.view.Menu; import android.view.MenuItem; import android.widget.EditText; import android.widget.Toast; import android.view.View; public class MainActivity extends ActionBarActivity { @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); } @Override public boolean onCreateOptionsMenu(Menu menu) { // Inflate the menu; this adds items to the action bar if it is present. getMenuInflater().inflate(R.menu.menu_main, menu); return true; } @Override public boolean onOptionsItemSelected(MenuItem item) { // Handle action bar item clicks here. The action bar will // automatically handle clicks on the Home/Up button, so long // as you specify a parent activity in AndroidManifest.xml. int id = item.getItemId(); //noinspection SimplifiableIfStatement if (id == R.id.action_settings) { return true; } return super.onOptionsItemSelected(item); } public void clicFunc(View view)throws NumberFormatException{ EditText dana = (EditText) findViewById(R.id.pole); EditText dana2 = (EditText) findViewById(R.id.pole2); EditText dana3 = (EditText) findViewById(R.id.pole3); try { int liczba = Integer.parseInt(dana.getText().toString()); int liczba2 = Integer.parseInt(dana2.getText().toString()); int liczba3 = Integer.parseInt(dana3.getText().toString()); if (liczba == 0) { Toast.makeText(MainActivity.this, "Współczynnik a nie może być równy 0!", Toast.LENGTH_SHORT) .show(); } else { int delta = (liczba2 * liczba2 - 4 * liczba * liczba3); double p = Math.sqrt(delta); if (delta == 0) { float wynik = -liczba2 / (liczba * 2); Toast.makeText(MainActivity.this,"Równanie ma jedno rozwiązanie, wynosi" + wynik, Toast.LENGTH_SHORT).show(); } else if (delta > 0) { double x1 = (-liczba2 - p) / (liczba * 2); double x2 = (-liczba2 + p) / (liczba * 2); Toast.makeText(MainActivity.this,"Równanie ma dwa rozwiązania, pierwsze wynosi" + x1 + ", a drugie" + x2, Toast.LENGTH_SHORT).show(); } else { Toast.makeText(MainActivity.this, "Delta jest ujemna, równanie nie ma rozwiązań!", Toast.LENGTH_SHORT).show(); } } } catch (Exception e) { Toast.makeText(MainActivity.this, "Nie podałeś danych! Popraw wpis!!!", Toast.LENGTH_SHORT).show(); } } } |