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.
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
Post a Comment