Fibonacci Strings ISC Computer Science 2014 Theory

A sequence of fibonacci strings is generated as follows:

S0 = "a", S1 = "b", Sn = S(n - 1) + S(n - 2) where '+' denotes concatenation. Thus the sequence is: a, b, ba, bab, babba, babbabab, ... n terms.

Design a class FiboString to generate fibonacci strings. Some of the members of the class are given below:

Class name: FiboString
Data members/instance variables:
x: to store the first string.
y: to store the second string.
z: to store the concatenation of the previous two strings.
n: to store the number of terms.
Member functions/methods:
FiboString(): constructor to assign x = "a", y = "b" and z = "ba".
void accept(): to accept the number of terms 'n'.
void generate(): to generate and print the fibonacci strings. The sum of (+ i.e. concatenation) first two strings is the third string. Eg. "a" is first string, "b" is second string then the third will be "ba", and fourth will be "bab" and so on.

Specify the class FiboString, giving details of the functions. Define the main() function to create an object and call the functions accordingly to enable the task.

import java.util.Scanner;
class FiboString{
    String x;
    String y;
    String z;
    int n;
    public FiboString(){
        x = "a";
        y = "b";
        z = "ba";
    }
    public void accept(){
        Scanner in = new Scanner(System.in);
        System.out.print("N = ");
        n = Integer.parseInt(in.nextLine());
    }
    public void generate(){
        if(n == 1)
            System.out.println(x);
        else if(n > 1){
            System.out.print(x + " " + y + " ");
            for(int i = 3; i <= n; i++){
                z = y + x;
                System.out.print(z + " ");
                x = y;
                y = z;
            }
        }
    }
    public static void main(String args[]){
        FiboString obj = new FiboString();
        obj.accept();
        obj.generate();
    }
}

Comments

Popular posts from this blog

Encrypt Program ISC Specimen 2023 Theory

No Repeat Program ISC Computer Science 2022 Semester 2 Theory

Bank Inheritance Program ISC Specimen 2023 Theory