A Padovan string P(n) for a natural number n, C/C++ Programming

Assignment Help:

c program for padovan string

 

Padovan series are positive integers obtained by the following process: The Padovan series is the sequence of integers P(n) defined by the initial values P(0) = P(1) = P(2) = 1, and the recurrence relation P(n) = P(n - 2) + P(n - 3).
Write a program to generate the Padovan series from n to m.
 
Constraints:

  • n >=0 and m <=49.
  • m >= n.

If the given inputs are invalid or out of range, then return -1 .
 
Example 1:
Input
from = 5
to = 10
 
Output:
returns {3, 4, 5, 7, 9, 12}
 
Explanation:

P(0
) = P(1
) = P(2
) = 1
, and
 the recurrence relation P(n) = P(n - 2
) + P(n - 3
). 
p(5
) = p(5
-2
) + p(5
-3
) 
        = p(3
) + p(2
) -------- (1
) 
p(3
) = p(3
-2
) + p(3
-1
) 
        = p(1
) + p(2
) 
        = 1
 + 1
 
        = 2
 
Substitute in
 (1
) 
p(5
) = 2
 + 1
 
        = 3
 

Similarly the recurrence should continue for the remaining positions.
 
Example 2:
Input
from = 45
to = 60
 
Output
Returns {-1}
 
CODE TO IMPLEMENT THIS:

import
 java.util.Scanner;
import
 java.util.ArrayList;
 
public
 class
 Padovan
Series
{
    public
 static
 void
 main(String
[] arg)
    {
        Scanner read = new
 Scanner(System.in);
        System.out.println("
Enter starting no. : "
);
        int
 start = read.nextInt();
        System.out.println("
Enter ending no. : "
);
        int
 end = read.nextInt();
        int
[] ans = getSeries(start, end);
        System.out.println("
Padovan
 series : "
);
        for
 (int
 a : ans)
            System.out.print(a + "
 "
);
    }
 
    public
 static
 int
[] getSeries(int
 s, int
 e)
    {
        ArrayList list = new
 ArrayList();
        int
 i, j = 0
;
        for
 (i = s; i <= e; i++, j++)
            list.add(getPadovan
(i));
        int
[] ans = new
 int
[j];
        for
 (i = 0
; i < j; i++)
            ans[i] = list.get(i);
        return
 ans;
    }
 
    public
 static
 int
 getPadovan
(int
 p)
    {
        if
 (p == 0
 || p == 1
 || p == 2
)
            return
 1
;
        return
 (getPadovan
(p - 2
) + getPadovan
(p - 3
));
    }
}

Related Discussions:- A Padovan string P(n) for a natural number n

Decision control instruction, if age of ram,shayam and ajay are input throu...

if age of ram,shayam and ajay are input through keyboard,write a program to determine the youngest of the three.

Palindrome, string S convert it to a palindrome by doing chara, C/C++ Progr...

string S convert it to a palindrome by doing chara, C/C++ Programming

Pointers to members, P o i n t er s to Members: In C a pointer is...

P o i n t er s to Members: In C a pointer is created  to locate  the address of another variable  for faster access. Consider the following example. int x, *p; p =

Explain type casting, Type Casting Implicit type conversions, as allowe...

Type Casting Implicit type conversions, as allowed by the language, can lead to errors creeping in the program if care is not taken. Thus, explicit type conversions may be used

Pebble merchant, having 2 arrays and 3killograms of pebbles are needed conv...

having 2 arrays and 3killograms of pebbles are needed converting an area of 1 square meter the rate of pebble is $5 per killograms

Algorithm, What is an algorithm and write an algorithm to calculate the sim...

What is an algorithm and write an algorithm to calculate the simple interest

Define register variables - low level programming, Define Register Variable...

Define Register Variables - Low Level Programming? The Register variables are a special case of an automatic variable. The Automatic variables are allocated storage in the memo

[email protected], Write a program to find the area under the curve y =...

Write a program to find the area under the curve y = f(x) between x = a and x = b, integrate y = f(x) between the limits of a and b. The area under a curve between two points can b

Stack push pop, 2 flowcharts, pseudocode for each (at least 4 algorithms), ...

2 flowcharts, pseudocode for each (at least 4 algorithms), and code for either a stack or a queuestion..

What is mime, What is MIME? MIME - Multi-purpose Internet Mail Extens...

What is MIME? MIME - Multi-purpose Internet Mail Extensions. MIME types signifies a standard way of classifying file types over Internet. Browsers and Web servers have

kbbpuc

1/28/2013 7:30:27 AM

V4TRRu kwmeezykbbns,">http://kwmeezykbbns.com/">kwmeezykbbns, [url=http://hoqcfhngzhzz.com/]hoqcfhngzhzz[/url], [link=http://olnulsgfmzta.com/]olnulsgfmzta[/link], http://vaqeasygbayc.com/

Zdykinir

1/31/2013 12:32:29 AM

I''ve seen some people around the gym wearing the thing, but I never asked them for their opinions so I''m glad to read some comments on your site., Phen375">http://joaquinsantaella.com">Phen375 Diet Pills, yzsgc,

Write Your Message!

Captcha
Free Assignment Quote

Assured A++ Grade

Get guaranteed satisfaction & time on delivery in every assignment order you paid with us! We ensure premium quality solution document along with free turntin report!

All rights reserved! Copyrights ©2019-2020 ExpertsMind IT Educational Pvt Ltd