Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > IT форум > Помощь студентам
Регистрация

Восстановить пароль

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 21.04.2015, 19:42   #1
Jul23
Новичок
Джуниор
 
Регистрация: 21.04.2015
Сообщений: 2
По умолчанию Java математическая задача

Ребята,помогите,пожалуйста))вот моя задача)
Начиная с 1996 года урожайность ячменя в одном хозяйстве увеличивалась каждый год на 2%. Через сколько лет урожайность достигнет 25 центнеров с гектара?
Задача не корректна,ввожу х-начальное количество урожайности ячменя в 1996г
Вот мой код

Код:
package aboutproductivity;
import static java.lang.Math.*;
import java.util.*;
public class AboutProductivity {
    public static void main(String[] args) {
       double x=1.0,m=1.0;
       int k=0;
       Scanner qtbarley=new Scanner(System.in);
       System.out.print("Введите количество урожайности ячменя в 1996 году ");
       qtbarley.nextDouble();
       k=0;
       do{ 
            m=pow(1.02,k);
            k++;
          }
        while((25/x)!=(int)m);
       System.out.print("Через "+k+" лет урожайность достигнет 25 центеров");
    }
}
Но не корректно работает,т.к. при вводе любого х, к=163,помогите исправить код.Буду очень благодарна
Jul23 вне форума Ответить с цитированием
Старый 21.04.2015, 19:56   #2
Аватар
Старожил
 
Аватар для Аватар
 
Регистрация: 17.11.2010
Сообщений: 18,922
По умолчанию

А чего в while не равно? Наверно пока (1.02) ^n<25/x

PS Можно решить без цикла: (1.02)^n>=25/x -> n<=log(25/x) по основанию 1.02
Если бы архитекторы строили здания так, как программисты пишут программы, то первый залетевший дятел разрушил бы цивилизацию

Последний раз редактировалось Аватар; 21.04.2015 в 20:03.
Аватар вне форума Ответить с цитированием
Старый 22.04.2015, 01:16   #3
tolikprankster
Пользователь
 
Регистрация: 09.02.2013
Сообщений: 60
По умолчанию

Цитата:
Сообщение от Jul23 Посмотреть сообщение
m=pow(1.02,k);
Что это такое? вы 1.02 возводите в степень к - зачем?
Цитата:
Сообщение от Jul23 Посмотреть сообщение
qtbarley.nextDouble();
а присвоить число?

Вот, тут работает:

Код:
import java.util.*;
public class AboutProductivity {
    public static void main(String[] args) {
       double x = 1;
       int k = 0;
       Scanner qtbarley = new Scanner(System.in);
       System.out.println("Введите количество урожайности ячменя в 1996 году ");
       if(qtbarley.hasNextDouble())
    	   x = qtbarley.nextDouble();
       do{ 
            x = x + x * 0.02;
            k++;
          }
        while(x < 25);
       System.out.println("Через " + k + " лет урожайность достигнет 25 центеров");
    }
}
Плюсуй в репу

Последний раз редактировалось tolikprankster; 22.04.2015 в 01:22.
tolikprankster вне форума Ответить с цитированием
Старый 02.01.2019, 22:27   #4
PabloEskabar
Новичок
Джуниор
 
Регистрация: 01.01.2019
Сообщений: 2
По умолчанию

Я предлагаю так решить данную задачу:

Код:
import java.util.Scanner;

public class Main {

    public static void main (String[] args){

       Scanner xxx = new Scanner(System.in);

        System.out.print("Введите колличество зерна на 1996 год -   ");

        double z = xxx.nextDouble();

        int k = 1996;


        for (double i = z; i<25; i*=1.02)
            k++;
        System.out.println("Урожайность достигнет 25 тонн с гектара к "+k);

    }
}
Пожалуйста, оформляйте Ваш код согласно правилам.

Последний раз редактировалось Вадим Мошев; 02.01.2019 в 23:25.
PabloEskabar вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Математическая задача victor1293 C# (си шарп) 0 09.10.2014 00:18
Математическая задача Shkolota Помощь студентам 0 06.11.2013 14:22
Математическая задача Blade Свободное общение 12 29.11.2011 13:28
Эк.-математическая задача r_tem Microsoft Office Excel 2 01.06.2011 13:44
Цикл for в С++ - простая математическая задача Blondy Помощь студентам 4 21.09.2009 19:47