Расчет соседней стороны треугольника в Java? - PullRequest
0 голосов
/ 05 февраля 2012

Я работаю над приложением, которое может вычислить, как далеко лестница должна быть от стены, в этом случае лестница является гипотенузой, и значение этого параметра будет зависеть от ввода пользователя, поэтому оно будет рассчитываться в футах, X= 73 градуса, A = cos 73 Соседняя / Гипотенуза.Посмотрите на изображение ниже, чтобы лучше понять:

enter image description here

Я провел некоторое исследование и обнаружил, что расстояние между ступеньками на лестнице составляет около 1 фута, и пользователю придется рассчитыватьколичество ступеней и введите это число в EditText и нажмите кнопку, чтобы рассчитать результаты при отображении его с помощью Toast.Итак, как я смогу вычислить A, используя тригонометрические функции в Java, и как я могу преобразовать строки из EditText в двойные, пожалуйста, помогите мне разобраться в этом, я работаю над школьным проектом, вот мой код,пожалуйста, скажите мне, что я должен добавить или удалить, спасибо за ваше время, немного нового для этого!
Также я вручную преобразовал A в радианы, так как я не знаю, как также преобразовать градусы в радианы!

package com.ladder;

import android.app.Activity;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button; 
import android.widget.EditText; 
import android.widget.Toast;  
import java.lang.Math;

public class LadderActivity extends Activity {  double x;
    double r = Math.cos(1.274090354);

    /** Called when the activity is first created. */
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);

            EditText edt1 = (EditText) findViewById(R.id.et1);
            String k = edt1.toString();


        Button btn = (Button) findViewById(R.id.bt1);
         btn.setOnClickListener(new OnClickListener() {
                        public void onClick(View v) {
                Toast.makeText(getApplicationContext(), " FT", Toast.LENGTH_SHORT).show();

                // TODO Auto-generated method stub
                            }       });
    } }

1 Ответ

3 голосов
/ 05 февраля 2012

Вы можете использовать математический класс Java и ниже подробный ответ на ваш вопрос Преобразование строки из текста редактирования в двойное значение

    //Your editText
    EditText editText = null;
    //Convert editText value to double.
    String stringValue = editText.getText().toString();
    Double doubleValue = 0.0;
    try{
        doubleValue = Double.parseDouble(stringValue);
    }catch(NumberFormatException e){
        e.printStackTrace();
    }

Как преобразовать градусы в радианы

        double angleInDegrees = 189.0;// angle in degree
        double angleInRadians = angleInDegrees * Math.PI / 180.0;

Это стороны треугольника

double Hypotenuse, Opposite, Adjacent;

Рассчитать «соседнее» значение.

        double angleInDegrees = (double)73;// angle in degree
        double angleInRadians = angleInDegrees * Math.PI / 180.0;

        double Adjacent = Math.cos(angleInRadians) * Hypotenuse          
        OR
        double Adjacent = Math.tan(angleInRadians)* Opposite  

Рассчитать противоположное значение

        Opposite = Math.sin(angleInRadians)* Hypotenuse;
        Opposite = Math.tan(angleInRadians)*Adjacent;

Рассчитать гипотенузуЗначение

        Hypotenuse = Opposite/Math.sin(angleInRadians);
        Hypotenuse = Adjacent/Math.cos(angleInRadians);
...