2012-04-22 2 views
0

Можно ли написать треугольник паскаля, используя один цикл? Я написал его, используя более одного цикла, и он работает нормально.Треугольник Паскалей в одном цикле

+2

Да, это, конечно, возможно. –

+0

Пожалуйста, помогите вам тогда. – mohammedsuhail

+4

Я ответил на ваш конкретный вопрос. Если вам нужна дополнительная помощь, вы знаете упражнение здесь - сначала! Давайте * по крайней мере * посмотрим вашу попытку или другой * конкретный * вопрос. –

ответ

1

Heck, я сделаю свой комментарий ответа:

Как намек, я хотел бы создать метод, который принимает в качестве входных данных числа строк треугольника вы хотите произвести, то в начале метод вычисляет общее количество элементов, на которые это будет переведено, и затем зациклируйте петлю через все элементы. Внутри цикла вы можете легко рассчитать, какую строку вы используете и какой столбец вы используете, а затем использовать эту информацию для создания своего значения.

0

код, который вы хотите, Here

или

package net.yogesh.test; 

import java.util.ArrayList; 
import java.util.List; 

public class pascal3 { 

    public static void main(String[] args) { 

     int noOfRows = 10; 
     int counter = 1; 
     List<Integer> list = new ArrayList<Integer>(); 
     list.add(1); 

     list = itMe(list, counter,noOfRows); 
    } 

    public static List<Integer> itMe(List<Integer> list, int counter,int noOfRows) { 
     System.out.println(list); 

     List<Integer> tempList = new ArrayList<Integer>(); 

     tempList.add(1); 
     for (int i = 1; i < list.size(); i++) { 
      tempList.add(list.get(i) + list.get(i-1)); 
     } 
     tempList.add(1); 

     if(counter != noOfRows) 
      itMe(tempList, ++counter,noOfRows); 

     return tempList; 
    } 
} 

Примечание

здесь выход, как ожидается,

, но если вы хотите в форматированный зрения, чем вам нужно использовать дополнительный цикл.

Выход

[1] 
[1, 1] 
[1, 2, 1] 
[1, 3, 3, 1] 
[1, 4, 6, 4, 1] 
[1, 5, 10, 10, 5, 1] 
[1, 6, 15, 20, 15, 6, 1] 
[1, 7, 21, 35, 35, 21, 7, 1] 
[1, 8, 28, 56, 70, 56, 28, 8, 1] 
[1, 9, 36, 84, 126, 126, 84, 36, 9, 1] 
Смежные вопросы