# NCERT Solutions for Class 12 Computer Science (C++) – Pointers

Very Short Answer Type Questions    [1 mark each]

Question 1:
Write the definition of a function FixPay (float Pay[ ], int N) in C+ + , which should modify each element of the array Pay having N elements, as per the following rules :

 Existing Salary Value Required Modification in Value If less than 1,00,000 Add 25% in the existing value If >=1,00,000 and <20,000 Add 20% in the existing value If >=2,00,000 Add 15% in the existing value

Аnswer:

```Void FixPay(float Pay[],int N)
{
for(int i=0;i<N;i++)
{
if(Pay[i]<100000)
Pay[i]+= Pay[i]*0.25;
else if(Pay[i]<200000)
Pay[i]+= Pay[i]*0.20;
else
Pay[i]+= Pay[i]*0.15 ;
}
}```

Question 2:
Write the definition of a member function INSERT() for a class QUEUE in C+ +, to remove a product from a dynamically allocated Queue of items considering the following code is already written as a part of the program.

```Struct ITEM
{
int INO; char INAME;
};
class QUEUE
{
ITEM *R,*F;
Public:
QUEUE(){R=NULL; F=NULL;}
void INSERT();
void DELETE();
~QUEUE();
};```

Аnswer:

```Void QUEUE::INSER()
{
ITEM*newitem = new ITEM;
Cout<<"enter item number";
cin>>newitem → INO;
Cout<<"Enter item name";
gets(newitem → INAME);
if (R==NULL)
R=F=newitem;
else
{
R = newitem;
}```

Question 1:
Write the output from the following C+ + program code :

```#include<iostream.h>
#include<ctype.h>
void strcon(char s[])
{
for(int i=0,l=0;s[i]!='\0';i++,l++);
fortint j=0;j<l;j++)
{
if(isupper(s[j]))
s[j]=tolower(s[j])+2;
else if( islower(s[j]))
s[j]=toupper(s[j])-2;
else
s[j] ='@';
}
}
void main()
{
char *c="Romeo Joliet";
strcon(c);
cout<<"Text="<<c<<endl;
c=c+3;
cout<<"New Text="<<c<<endl;
c=c+5-2 ;
cout<<"last Text= "<<c;
}```

Аnswer:
Text = tMKCM@lMJGCR
New Text = KCM@1MJGCR
Last Text = 1MJGCR

Question 2:
Obtain the output of the following C+ + program as expected to appear on the screen after its execution.
Important Note :
All the desired header files are already included in the code, which are required to run the code.

```void main()
{
char *Text="AJANTA"; int *P, Num[]={l,5,7,9}
P=Num;
cout <<*p<< Text <<endl;
Text++;
P++;
cout<<*P<<Text<<endl;
}```

Аnswer:
1AJANTA
5JANTA

Question 3:
Obtain the output from the following C+ + program as expected to appear on the screen after its execution.
Important Note :
• Adi the desired header files are already included in the code, which are required to run the code.

```void main()
{
char *String="SARGAM";
int *Ptr, a[]={1,5,7,9};
ptr=a;
cout<<*ptr<<String<<endl;
String++;
ptr+=3;
cout<<*ptr<<String<<endl;
}```

Аnswer:
1 SARGAM
9ARGAM

Question 4:
Give the output of the following program segment: (Assuming all desired header file(s) are already included)

```void main()
{
float *Ptr, Points[] = {20,50,30,40,10};
Ptr = points;
cout<<*Ptr<<endl;
Ptr+=2;
Points+=2.5;
cout<<*Ptr<<endl;
Ptr++;
(*Ptr)+=2.5;
cout<<Points<<endl;
}```

Аnswer:
20.00 32.5
42.50

Question 5:
Find the output of the following code :
Important Note :
All the header files are already included in the code, which are required to run the code.

```void main()
{
char *String="SHAKTI";
int*Point,Value[]={10,15,70,19};
Point=Value;
cout<<*Point<<String<<endl;
String++;
Point++;
cout<<*Point<<String<<endl;
}```

Аnswer:
10SHAKTI
15HAKTI

Question 6:
Write the output of the following C+ + program code :
Note : Assume all required header files are already being included in the program.

```void change(int*s)
{
for(int i=0;i<4;i++)
{
if(*s<40)
{
if(*s%2==0)
*s=*s+10;
else
*s=*s+ll;
}
else
{
if(*s%2==0)
*S=*S-10;
else
*s=*s-ll;
}
cout<<*s<<" ";
s++;
}
}
void main()
{
int score[]={25,60,35,53 };
change(score);
}```

Аnswer:
36 50 46 42

Question 1:
Find the output of the following program :

```#include<iostream.h>
void in(int x,int y,int &z)
{
x+=y;
y--;
z*=(x-y);
}
void out(int z,int y,int &x)
{
x*=y;
y++;
z/=(x+y);
}
void main()
{
int a=20, b=30, c=10;
out(a,c,b);
cout<<a<<"#"<<b<<"#"<<c<<"#"<<endl;
in(b,c, a) ;
cout<<a<<"®"<<b<<"@"<<c<<"@"<<endl;
out(a,b,c);
cout<<a<<"\$"<<b<<"\$"<<c<<"\$"<<endl;
}```

Аnswer:
20#300#10#
620@300@10@
620\$300\$3000\$

Question 1:
Find the output of the following code:

```#include<iostream.h>
void main()
{
int *Striker;
int Track[]={10,25,30,55};
Striker=Track;
Track+=30;
cout<<"Striker"<<*Striker<<endl;
*Striker=-10;
Striker++;
cout<<"Next@"<<*Striker<<endl;
Striker+=2;
cout<<"Last@"<<*Striker<<endl;
cout<<"Rest To"<<*Track<<endl;
}```

Аnswer:
Striker 10
Next@55
Last@55
Rest To 0

Question 2:
Find the output of the following code :

```#include<iostream.h>
void main()
{
int *Queen;
Moves[]={ll,22,33,44};
Queen=Moves;
Moves+=22;
cout<<"Queen@"<<*Queen<<endl;
*Queen-=ll;
Queen+=2;
cout<<”Now@"<<*Queen<<endl;
Queen++;
cout<<"Finally@"<<*Queen<<endl;
cout<<"NewOrigin@"<<*Moves<<endl;
}```

Аnswer:
Queen@11
Now@55
Finally@44
NewOrigin@0

+