Skillrack IL 4

Solutions for Skillrack CSE1002 Inlab 4

Total time : 20 mins

Challenges : 1

Question (Arithmetic Progression)

An Arithmetic Progression(AP) is described by the first term ‘f’ and the common difference’. The n-th term of an AP is described by a_n= f+(n-1)d. The progression 1,4,9 .. is an AP.  Given the f,d n, k, p , q, Develop a program in C++ using the class, to represent an arithmetic progression and provide methods to compute:

(i)  n-th term of the arithmetic progression

(ii)  r such that a_r=k. If there is no r such that a_r=k, the program should print zero.

(iii) Absolute Difference between a_p and a_q

Input Format:
First line contains the first term of the AP

Next line contains the common difference d

Next line contains the value of k

Next line contains the value of p

Next line contains the value of q

Output Format:
First line should contain the nth of the arithmetic progression

Next line should contain the value of ‘r’

Next line should contain the absolute difference between a_p and a_q
Boundary Conditions:
a , d are integers

n,p,q are all positive integers

Solution

#include

#include

using namespace std;

class apr

{

int first;

int diff;

public:

void get();

int compute_term(unsigned int n);

int find_r(int k);

int abs_diff(unsigned int p,unsigned int q);

};

void apr :: get()
{
	cin>>first>>diff;
}
int apr :: compute_term(unsigned int n)
{
	return(first+(n-1)*diff);
}
int apr :: find_r(int k)
{
	if((k-first)%diff==0)
        return(((k-first)/diff)+1);
        else
        return(0);
}
int apr :: abs_diff(unsigned int p,unsigned int q)
{
	return(abs((p-q)*diff));
}

int main()

{

apr ap1;

unsigned int n,p,q;

int k;

ap1.get();

cin>>n;

cout<<ap1.compute_term(n)<<endl; cin>>k;

cout<<ap1.find_r(k)<<endl; cin>>p>>q;

cout<<ap1.abs_diff(p,q)<<endl;

}

Input

Array : 2 4 6 8 10 ...

INPUT :

2
2
5
6
3
2

Output

OUTPUT :

10
3
2

Note

There might be some changes in the code so please be updated as I do not have the actual Test cases.

Advertisements

One thought on “Skillrack IL 4

Leave a Reply

Fill in your details below or click an icon to log in:

WordPress.com Logo

You are commenting using your WordPress.com account. Log Out / Change )

Twitter picture

You are commenting using your Twitter account. Log Out / Change )

Facebook photo

You are commenting using your Facebook account. Log Out / Change )

Google+ photo

You are commenting using your Google+ account. Log Out / Change )

Connecting to %s