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

C program to check display days and months , C program to check display ...

C program to check display days and month main() {           int months, days;           clrscr();           printf("ENTER DAYS: ");           scanf("%d", &days);

Write a c program to input five numbers, Write a C program to input five nu...

Write a C program to input five numbers and print them out on a new line e.g 5, 10, 15, 20, 25 displayed as   5   10   15   20   25 #include stdio.h   void main()   {

Program to find shortest path between two nodes, Ques.Implement a c/c++ pro...

Ques.Implement a c/c++ program to find a shortest path between two nodes in a network?network should be taken as an adjacency matrix.

Doubt!, find the greater of the two variables, without using conditional lo...

find the greater of the two variables, without using conditional loops or ternary operators?

Gaming tracks company for a mobile game developing, We want Guys For Job in...

We want Guys For Job in Gaming Tracks Company for a mobile game developing Project Description: I want a team of game developers for life-time as mobile dev team in my compan

C program to calculate area of cube, Aim: To implement program to calculat...

Aim: To implement program to calculate area of cube using inline function. Code: inline void area_cube(float side) {             float area;             are

Functions, Define  F u n c t i o n?  T h e r e a r e t...

Define  F u n c t i o n?  T h e r e a r e t w o t y p e s o f f u n ct i o n b u i l t - i n f un ct i o n s a n d u

Pebble merchant, There is a pebble merchant. He sells the pebbles, that are...

There is a pebble merchant. He sells the pebbles, that are used for shining the floor. His main duty is to take the length of the room’s sides. But he sometimes mistakes doing that

Program to find whether a number is odd or even, PROGRAM TO FIND WHETHER A ...

PROGRAM TO FIND WHETHER A NUMBER IS ODD OR EVEN int main() { int number ; printf("Enter a whole number\n"); scanf("%d",&number); if(number % 2 == 0) printf("n

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