PDA

Показать полную графическую версию : Помощь по заданию.


elyno@vk
03-08-2012, 20:44
Здравствуйте! Изучаю Java, возникла проблема с заданием. Помогите пожалуйста. Желательно объяснить. :)
Вот само задание:
Напишите метод, увеличивающий элементы массива на 10%.
Подсказка: подумайте, какие у этого метода входные и выходные данные. Решите сами, должен ли метод изменять исходный массив, или в результате работы будет создаваться новый. Обоснуйте свое решение преподавателю. Напишите к методу комментарии.

Hector
03-08-2012, 20:55
крутишь цикл, каждый элемент умножаешь на 1,1 в чем проблема?

elyno@vk
03-08-2012, 21:17
А сам код можно?

ferget
03-08-2012, 22:08
Подсказка: подумайте, какие у этого метода входные и выходные данные. Решите сами, должен ли метод изменять исходный массив, или в результате работы будет создаваться новый. Обоснуйте свое решение преподавателю. Напишите к методу комментарии. »
Так все-таки изменять исходный массив или создавать новый?

CyberDaemon
03-08-2012, 22:28
А сам код можно? »
Это тебе на форум фрилансеров нужно.
Здесь тебе могут только помочь в решении.
Рассказывай, что делал, какое видишь решение и что не получается.

ferget
03-08-2012, 22:28
Примерно так
import java.util.Arrays;

public class JavaApplication12 {

public static void main(String[] args)
{
double mass[]={1,2,3,4,5};
//sendByReference(mass);
//System.out.println(Arrays.toString(mass));
double[] a=sendByValue(mass);
System.out.println(Arrays.toString(mass));
System.out.println(Arrays.toString(a));
}

//Этот метод изменяет исходный массив. Так как массивы передаются по ссылке, то просто умножаем
public static void sendByReference(double[] mass)
{
for (int i = 0; i < mass.length; i++) {
mass[i] = mass[i]*1.1;
}
}

//Этот метод возвращает новый массив
public static double[] sendByValue(double[] mas)
{
//Здесь делаем копию исходного массива
double[] mass=mas.clone();
for (int i = 0; i < mass.length; i++) {
mass[i] = mass[i]*1.1;
}
//Возвращаем новый массив
return mass;
}
}




© OSzone.net 2001-2012