battle programmers alliance

battle programminga forum for elite programmerswith extreme will powerto sharpen theire skills
 
HomeCalendarFAQSearchMemberlistUsergroupsRegisterLog in
Search
 
 

Display results as :
 
Rechercher Advanced Search
Latest topics
» vb.net convert array to xy coodinates
Fri Dec 08, 2017 2:18 pm by Admin

» JS javascript convert number to words
Wed Dec 06, 2017 1:23 pm by Moti Barski

» JS pascal triangle question
Mon Dec 04, 2017 9:54 am by Admin

» youtube emojis
Mon Dec 04, 2017 12:14 am by Admin

» vb.net pascal triangle
Sat Dec 02, 2017 10:10 am by Moti Barski

» puzzles at various levels
Sat Dec 02, 2017 8:06 am by Admin

» primitive tech
Fri Dec 01, 2017 8:02 pm by Admin

» course templets
Thu Nov 30, 2017 10:14 am by Moti Barski

» vb.net check if two rectangles overlap
Fri Nov 24, 2017 7:36 pm by Moti Barski

December 2017
SunMonTueWedThuFriSat
     12
3456789
10111213141516
17181920212223
24252627282930
31      
CalendarCalendar
Social bookmarking
Social bookmarking digg  Social bookmarking delicious  Social bookmarking reddit  Social bookmarking stumbleupon  Social bookmarking slashdot  Social bookmarking yahoo  Social bookmarking google  Social bookmarking blogmarks  Social bookmarking live      

Bookmark and share the address of battle programmers alliance on your social bookmarking website
Share | 
 

 JS pascal triangle question

View previous topic View next topic Go down 
AuthorMessage
Admin
Admin
avatar

Posts : 71
Join date : 2011-08-01

PostSubject: JS pascal triangle question   Mon Dec 04, 2017 9:54 am

the following JS code is supposed to output a layer of the pascal triangle :
Code:
function pascal(floor){

 var ar1 = [1,1];
if (floor < 2){return '1 1';}

return pascalPt2(floor,2,ar1);
}


function pascalPt2(floor,at,prevfloor)
{
 var result = ""; var ar2 = [];ar2[0] = 1;

 if (at == floor + 1) {for(var v of prevfloor){result = result + " " + v};return result;}

 else{for (var i=0;i<at - 2;i++){ar2[i+1] = prevfloor[i]+prevfloor[i+1]};ar2[at] = 1;}

 return pascalPt2(floor,at+1,ar2)

}


console.info(pascal(3))

for the input 3 the output is supposed to be : 1 3 3 1
for the input 4 the output is supposed to be : 1 4 6 4 1
but I get : 1 nan nan 1 and 1 nan nan nan 1 instead
here is the working vb.net code :

Code:
Public Class Form1
    Function pascal(ByVal floor As Integer) As String
        Dim ar1 = New Integer() {1, 1}
        If floor < 2 Then
            Return "1 1"


        End If
        Return pascalPt2(floor, 2, ar1)
    End Function
    Function pascalPt2(ByVal floor As Integer, ByVal at As Integer, ByVal prevfloor As Object) As String
        Dim result = ""
        Dim ar2(at) As Integer
        ar2(0) = 1
        If at = floor + 1 Then
            For Each item As Integer In prevfloor
                result &= item.ToString() & " "

            Next
            Return result
        Else
            For index = 0 To at - 2
                ar2(index + 1) = prevfloor(index) + prevfloor(index + 1)
            Next
            ar2(at) = 1
        End If
        Return pascalPt2(floor, at + 1, ar2)
    End Function
    Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
        MsgBox(pascal(4))
    End Sub
End Class

_________________
kurayami no kagi
Back to top Go down
View user profile https://yotamarker.justforum.net
 
JS pascal triangle question
View previous topic View next topic Back to top 
Page 1 of 1
 Similar topics
-
» Question on vision
» Answer these questions with song titles
» Weigel's 80 Days of Wow Giveaway 6/15
» Curiously Specific Martial Arts Question
» Question for Marc

Permissions in this forum:You cannot reply to topics in this forum
battle programmers alliance :: battle programming alliance :: chit chat-
Jump to: