Looking for TCS NQT coding questions and answers then you are at the right place in this guide you will find TCS NQT Coding Questions and solutions this will help you prepare for interview and improve your programming knowledge.
Do take your time answer all this TCS nqt coding questions it will really benefit you this TCS NQT questions and answers are prepared by Prepinsta. If you want more questions like this you can visit here – Prepinsta TCS coding questions.
Disclaimer: This article is shared for educational purpose only no copyright is intented all the material belongs to their respective owners thank you.
TCS NQT Coding Questions 2021
Contents
Below are some of the best 12 TCS NQT coding questions with solutions you can answer all of these questions one by one you will find the solutions in different programming languages. If you want more questions you can visit prepinsta TCS NQT coding guide.
Here are more guides on questions and answers:
1. TCS NQT Coding Question
There is a JAR full of candies for sale at a mall counter. JAR has the capacity N, that is JAR can contain maximum N candies when JAR is full. At any point of time. JAR can have M number of Candies where M<=N.
Candies are served to the customers. JAR is never remain empty as when last k candies are left. JAR if refilled with new candies in such a way that JAR get full.
Write a code to implement above scenario. Display JAR at counter with available number of candies. Input should be the number of candies one customer can order at point of time.
Update the JAR after each purchase and display JAR at Counter. Output should give number of Candies sold and updated number of Candies in JAR.
If Input is more than candies in JAR, return: “INVALID INPUT”
Given,
N=10, where N is NUMBER OF CANDIES AVAILABLE
K =< 5, where k is number of minimum candies that must be inside JAR ever.
Example 1:(N = 10, k =< 5)
- Input Value
- 3
- Output Value
- NUMBER OF CANDIES SOLD : 3
- NUMBER OF CANDIES AVAILABLE : 7
Example : (N=10, k<=5)
- Input Value
- 0
- Output Value
- INVALID INPUT
- NUMBER OF CANDIES LEFT : 10
C
C++
JAVA
PYTHON
C
#include<stdio.h> int main() { int n=10, k=5; int num; scanf("%d",&num); if(num>=1 && num<=5) { printf("NUMBER OF CANDIES SOLD : %dn",num); printf("NUMBER OF CANDIES LEFT : %d",n-num); } else { printf("INVALID INPUTn"); printf("NUMBER OF CANDIES LEFT : %d",n); } return 0; }
C++
#include <iostream.h> using namespace std; int main() { int n=10, k=5; int num; cin>>num; if(num>=1 && num<=5) { cout<< "NUMBER OF CANDIES SOLD : "<<num<<"n"; cout<<"NUMBER OF CANDIES LEFT : "<<n-num; } else { cout<<"INVALID INPUTn"; cout<<"NUMBER OF CANDIES LEFT : "<<n; } return 0; }
JAVA
import java.util.Scanner; class Main{ public static void main(String[] args) { int n = 10, k = 5; int num; Scanner sc = new Scanner(System.in); num = sc.nextInt(); if(num >= 1 && num <= 5) { System.out.println("NUMBER OF CANDIES SOLD : " + num); System.out.print("NUMBER OF CANDIES LEFT : " + (n - num)); } else { System.out.println("INVALID INPUT"); System.out.print("NUMBER OF CANDIES LEFT : " + n); } } }
PYTHON
total_candies = 10 no_of_candies = int(input()) if no_of_candies in range(1, 6): print('No. of Candies Sold:',no_of_candies) print('No. of Candies Left:',total_candies-no_of_candies) else: print("Invalid Input") print('No. of Candies Left:',total_candies)
1. TCS NQT Coding Question
There is a JAR full of candies for sale at a mall counter. JAR has the capacity N, that is JAR can contain maximum N candies when JAR is full. At any point of time. JAR can have M number of Candies where M<=N.
Candies are served to the customers. JAR is never remain empty as when last k candies are left. JAR if refilled with new candies in such a way that JAR get full.
Write a code to implement above scenario. Display JAR at counter with available number of candies. Input should be the number of candies one customer can order at point of time.
Update the JAR after each purchase and display JAR at Counter. Output should give number of Candies sold and updated number of Candies in JAR.
If Input is more than candies in JAR, return: “INVALID INPUT”
Given,
N=10, where N is NUMBER OF CANDIES AVAILABLE
K =< 5, where k is number of minimum candies that must be inside JAR ever.
Example 1:(N = 10, k =< 5)
- Input Value
- 3
- Output Value
- NUMBER OF CANDIES SOLD : 3
- NUMBER OF CANDIES AVAILABLE : 7
Example : (N=10, k<=5)
- Input Value
- 0
- Output Value
- INVALID INPUT
- NUMBER OF CANDIES LEFT : 10
C
C++
JAVA
PYTHON
C
#include<stdio.h> int main() { int n=10, k=5; int num; scanf("%d",&num); if(num>=1 && num<=5) { printf("NUMBER OF CANDIES SOLD : %dn",num); printf("NUMBER OF CANDIES LEFT : %d",n-num); } else { printf("INVALID INPUTn"); printf("NUMBER OF CANDIES LEFT : %d",n); } return 0; }
C++
#include <iostream.h> using namespace std; int main() { int n=10, k=5; int num; cin>>num; if(num>=1 && num<=5) { cout<< "NUMBER OF CANDIES SOLD : "<<num<<"n"; cout<<"NUMBER OF CANDIES LEFT : "<<n-num; } else { cout<<"INVALID INPUTn"; cout<<"NUMBER OF CANDIES LEFT : "<<n; } return 0; }
JAVA
import java.util.Scanner; class Main{ public static void main(String[] args) { int n = 10, k = 5; int num; Scanner sc = new Scanner(System.in); num = sc.nextInt(); if(num >= 1 && num <= 5) { System.out.println("NUMBER OF CANDIES SOLD : " + num); System.out.print("NUMBER OF CANDIES LEFT : " + (n - num)); } else { System.out.println("INVALID INPUT"); System.out.print("NUMBER OF CANDIES LEFT : " + n); } } }
PYTHON
total_candies = 10 no_of_candies = int(input()) if no_of_candies in range(1, 6): print('No. of Candies Sold:',no_of_candies) print('No. of Candies Left:',total_candies-no_of_candies) else: print("Invalid Input") print('No. of Candies Left:',total_candies)
2. TCS NQT Coding Question
Selection of MPCS exams include a fitness test which is conducted on ground. There will be a batch of 3 trainees, appearing for running test in track for 3 rounds.
You need to record their oxygen level after every round. After trainee are finished with all rounds, calculate for each trainee his average oxygen level over the 3 rounds and select one with highest oxygen level as the most fit trainee.
If more than one trainee attains the same highest average level, they all need to be selected.
Display the most fit trainee (or trainees) and the highest average oxygen level.
Note:
- The oxygen value entered should not be accepted if it is not in the range between 1 and 100.
- If the calculated maximum average oxygen value of trainees is below 70 then declare the trainees as unfit with meaningful message as “All trainees are unfit.
- Average Oxygen Values should be rounded.
Example 1:
- INPUT VALUES
95
92
95
92
90
92
90
92
90
- OUTPUT VALUES
- Trainee Number : 1
- Trainee Number : 3
Note:
Input should be 9 integer values representing oxygen levels entered in order as
Round 1
- Oxygen value of trainee 1
- Oxygen value of trainee 2
- Oxygen value of trainee 3
Round 2
- Oxygen value of trainee 1
- Oxygen value of trainee 2
- Oxygen value of trainee 3
Round 3
- Oxygen value of trainee 1
- Oxygen value of trainee 2
- Oxygen value of trainee 3
Output must be in given format as in above example. For any wrong input final output should display “INVALID INPUT”
C
C++
JAVA
PYTHON
C
#include <stdio.h> int main() { int trainee[3][3]; int average[3] = {0}; int i, j, max=0; for(i=0; i<3; i++) { for(j=0; j<3; j++) { scanf("%d",&trainee[i][j]); if(trainee[i][j]<1 || trainee[i][j]>100) { trainee[i][j] = 0; } } } for(i=0; i<3; i++) { for(j=0; j<3; j++) { average[i] = average[i] + trainee[j][i]; } average[i] = average[i] / 3; } for(i=0; i<3; i++) { if(average[i]>max) { max = average[i]; } } for(i=0; i<3; i++) { if(average[i]==max) { printf("Trainee Number : %dn",i+1); } if(average[i]<70) { printf("Trainee is Unfit"); } } return 0; }
C++
#include<iostream.h> using namespace std; int main() { int trainee[3][3]; int average[3] = {0}; int i, j, max=0; for(i=0; i<3; i++) { for(j=0; j<3; j++) { cin>>trainee[i][j]; if(trainee[i][j]<1 || trainee[i][j]>100) { trainee[i][j] = 0; } } } for(i=0; i<3; i++) { for(j=0; j<3; j++) { average[i] = average[i] + trainee[j][i]; } average[i] = average[i] / 3; } for(i=0; i<3; i++) { if(average[i]>max) { max = average[i]; } } for(i=0; i<3; i++) { if(average[i]==max) { cout<<"Trainee Number : "<<i+1<<"n"; } if(average[i]<70) { cout<<"Trainee is Unfit"; } } return 0; }
JAVA
import java.util.Scanner; class Main { public static void main(String[] args) { int[][] trainee = new int[3][3]; int[] average = new int[3]; int max = 0; Scanner sc = new Scanner(System.in); for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { trainee[i][j] = sc.nextInt(); if(trainee[i][j] < 1 || trainee[i][j] > 100) { trainee[i][j] = 0; } } } for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { average[i] = average[i] + trainee[j][i]; } average[i] = average[i] / 3; } for(int i = 0; i < 3; i++) { if(average[i] > max) { max = average[i]; } } for(int i = 0; i < 3; i++) { if(average[i] == max) { System.out.println("Trainee Number : " + (i + 1)); } if(average[i] <70) { System.out.print("Trainee is Unfit"); } } } }
PYTHON
trainee = [[],[],[],[]] for i in range(3): for j in range(3): trainee[i].append(int(input())) if (trainee[i][-1]) not in range(1,101): print("invalid input") for i in range(3): trainee[3].append((trainee[2][i]+trainee[1][i]+trainee[0][i])//3) maximum = max(trainee[3]) for i in range(3): if trainee[3][i] < 70 : print("Trainee {0} is unfit".format(i+1)) elif trainee[3][i] == maximum: print("Trainee Number: ",i+1)
2. TCS NQT Coding Question
Selection of MPCS exams include a fitness test which is conducted on ground. There will be a batch of 3 trainees, appearing for running test in track for 3 rounds.
You need to record their oxygen level after every round. After trainee are finished with all rounds, calculate for each trainee his average oxygen level over the 3 rounds and select one with highest oxygen level as the most fit trainee.
If more than one trainee attains the same highest average level, they all need to be selected.
Display the most fit trainee (or trainees) and the highest average oxygen level.
Note:
- The oxygen value entered should not be accepted if it is not in the range between 1 and 100.
- If the calculated maximum average oxygen value of trainees is below 70 then declare the trainees as unfit with meaningful message as “All trainees are unfit.
- Average Oxygen Values should be rounded.
Example 1:
- INPUT VALUES
95
92
95
92
90
92
90
92
90
- OUTPUT VALUES
- Trainee Number : 1
- Trainee Number : 3
Note:
Input should be 9 integer values representing oxygen levels entered in order as
Round 1
- Oxygen value of trainee 1
- Oxygen value of trainee 2
- Oxygen value of trainee 3
Round 2
- Oxygen value of trainee 1
- Oxygen value of trainee 2
- Oxygen value of trainee 3
Round 3
- Oxygen value of trainee 1
- Oxygen value of trainee 2
- Oxygen value of trainee 3
Output must be in given format as in above example. For any wrong input final output should display “INVALID INPUT”
C
C++
JAVA
PYTHON
C
#include <stdio.h> int main() { int trainee[3][3]; int average[3] = {0}; int i, j, max=0; for(i=0; i<3; i++) { for(j=0; j<3; j++) { scanf("%d",&trainee[i][j]); if(trainee[i][j]<1 || trainee[i][j]>100) { trainee[i][j] = 0; } } } for(i=0; i<3; i++) { for(j=0; j<3; j++) { average[i] = average[i] + trainee[j][i]; } average[i] = average[i] / 3; } for(i=0; i<3; i++) { if(average[i]>max) { max = average[i]; } } for(i=0; i<3; i++) { if(average[i]==max) { printf("Trainee Number : %dn",i+1); } if(average[i]<70) { printf("Trainee is Unfit"); } } return 0; }
C++
#include<iostream.h> using namespace std; int main() { int trainee[3][3]; int average[3] = {0}; int i, j, max=0; for(i=0; i<3; i++) { for(j=0; j<3; j++) { cin>>trainee[i][j]; if(trainee[i][j]<1 || trainee[i][j]>100) { trainee[i][j] = 0; } } } for(i=0; i<3; i++) { for(j=0; j<3; j++) { average[i] = average[i] + trainee[j][i]; } average[i] = average[i] / 3; } for(i=0; i<3; i++) { if(average[i]>max) { max = average[i]; } } for(i=0; i<3; i++) { if(average[i]==max) { cout<<"Trainee Number : "<<i+1<<"n"; } if(average[i]<70) { cout<<"Trainee is Unfit"; } } return 0; }
JAVA
import java.util.Scanner; class Main { public static void main(String[] args) { int[][] trainee = new int[3][3]; int[] average = new int[3]; int max = 0; Scanner sc = new Scanner(System.in); for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { trainee[i][j] = sc.nextInt(); if(trainee[i][j] < 1 || trainee[i][j] > 100) { trainee[i][j] = 0; } } } for(int i = 0; i < 3; i++) { for(int j = 0; j < 3; j++) { average[i] = average[i] + trainee[j][i]; } average[i] = average[i] / 3; } for(int i = 0; i < 3; i++) { if(average[i] > max) { max = average[i]; } } for(int i = 0; i < 3; i++) { if(average[i] == max) { System.out.println("Trainee Number : " + (i + 1)); } if(average[i] <70) { System.out.print("Trainee is Unfit"); } } } }
PYTHON
trainee = [[],[],[],[]] for i in range(3): for j in range(3): trainee[i].append(int(input())) if (trainee[i][-1]) not in range(1,101): print("invalid input") for i in range(3): trainee[3].append((trainee[2][i]+trainee[1][i]+trainee[0][i])//3) maximum = max(trainee[3]) for i in range(3): if trainee[3][i] < 70 : print("Trainee {0} is unfit".format(i+1)) elif trainee[3][i] == maximum: print("Trainee Number: ",i+1)
3. TCS NQT Coding Question
A washing machine works on the principle of Fuzzy System, the weight of clothes put inside it for washing is uncertain But based on weight measured by sensors, it decides time and water level which can be changed by menus given on the machine control area.
For low level water, the time estimate is 25 minutes, where approximately weight is between 2000 grams or any nonzero positive number below that.
For medium level water, the time estimate is 35 minutes, where approximately weight is between 2001 grams and 4000 grams.
For high level water, the time estimate is 45 minutes, where approximately weight is above 4000 grams.
Assume the capacity of machine is maximum 7000 grams
Where approximately weight is zero, time estimate is 0 minutes.
Write a function which takes a numeric weight in the range [0,7000] as input and produces estimated time as output is: “OVERLOADED”, and for all other inputs, the output statement is
“INVALID INPUT”.
Input should be in the form of integer value –
Output must have the following format –
Time Estimated: Minutes
Example:
- Input value
2000
- Output value
Time Estimated: 25 minutes
Solution
C
C++
PYTHON
C
#include<stdio.h> void calculateTime(int n) { if(n==0) printf("Time Estimated : 0 Minutes"); else if(n>0 && n<=2000) printf("Time Estimated : 25 Minutes"); else if(n>2000 && n<=4000) printf("Time Estimated : 35 Minutes"); else if(n>4000 && n<=7000) printf("Time Estimated : 45 Minutes"); else printf("INVALID INPUT"); } int main() { int machineWeight; scanf("%d",&machineWeight); calculateTime(machineWeight); return 0; }
C++
#include<bits/stdc++.h>
using namespace std;
void calculateTime (int n)
{
if (n == 0)
cout << "Time Estimated : 0 Minutes";
else if (n > 0 && n <= 2000)
cout << "Time Estimated : 25 Minutes";
else if (n > 2000 && n <= 4000)
cout << "Time Estimated : 35 Minutes";
else if (n > 4000 && n <= 7000)
cout << "Time Estimated : 45 Minutes";
else
cout << "INVALID INPUT";
}
int main ()
{
int Weight;
cin >> Weight;
calculateTime (Weight);
return 0;
}
PYTHON
n = int(input()) if n==0: print("Time Estimated : 0 Minutes") elif n in range(1,2001): print("Time Estimated : 25 Minutes") elif n in range(2001,4001): print("Time Estimated : 35 Minutes") elif n in range(4001,7001): print("Time Estimated : 45 Minutes") else: print("INVALID INPUT")
4. TCS NQT Coding Question
The Caesar cipher is a type of substitution cipher in which each alphabet in the plaintext or messages is shifted by a number of places down the alphabet.
For example,with a shift of 1, P would be replaced by Q, Q would become R, and so on.
To pass an encrypted message from one person to another, it is first necessary that both parties have the ‘Key’ for the cipher, so that the sender may encrypt and the receiver may decrypt it.
Key is the number of OFFSET to shift the cipher alphabet. Key can have basic shifts from 1 to 25 positions as there are 26 total alphabets.
As we are designing custom Caesar Cipher, in addition to alphabets, we are considering numeric digits from 0 to 9. Digits can also be shifted by key places.
For Example, if a given plain text contains any digit with values 5 and keyy =2, then 5 will be replaced by 7, “-”(minus sign) will remain as it is. Key value less than 0 should result into “INVALID INPUT”
Example 1:
Enter your PlainText: All the best
Enter the Key: 1
The encrypted Text is: Bmm uif Cftu
Write a function CustomCaesarCipher(int key, String message) which will accept plaintext and key as input parameters and returns its cipher text as output.
Solution
C
C++
PYTHON
C
#include
int main()
{
char str[100];
int key, i=0, left;
printf("Enter your plain text : ");
scanf("%[^n]s",str);
printf("Enter the key : ");
scanf("%d",&key);
if(key==0)
{
printf("INVALID INPUT");
}
else
{
while(str[i]!=' ')
{
//printf("%dn", str[i]);
if(str[i]>=48 && str[i]<=57)
{
if(str[i]+key<=57)
{
str[i] = str[i] + key;
}
else
{
left = (str[i] + key) - 57;
str[i] = 47 + left;
}
}
else if(str[i]>=65 && str[i]<=90)
{
if(str[i]+key<=90)
{
str[i] = str[i] + key;
}
else
{
left = (str[i] + key) - 90;
str[i] = 64 + left;
}
}
else if(str[i]>=97 && str[i]<=122)
{
if(str[i]+key<=122)
{
str[i] = str[i] + key;
}
else
{
left = (str[i] + key) - 122;
str[i] = 96 + left;
}
}
i++;
}
printf("The encrypted text is : %s",str);
}
return 0;
}
C++
#include<bits/stdc++.h>
using namespace std;
void ceaser(string s, int key)
{
if(key==0)
{
printf("INVALID INPUT");
}
else
{
for(int i=0; i<s.size(); i++){
if(isdigit(s[i]))
{
if(s[i]+key<=57)
{
s[i] = s[i] + key;
}
else
{
int left = (s[i] + key) - 57;
s[i] = 47 + left;
}
}
else if(s[i]>=65 && s[i]<=90)
{
if(s[i]+key<=90)
{
s[i] = s[i] + key;
}
else
{
int left = (s[i] + key) - 90;
s[i] = 64 + left;
}
}
else if(s[i]>=97 && s[i]<=122)
{
if(s[i]+key<=122)
{
s[i] = s[i] + key;
}
else
{
int left = (s[i] + key) - 122;
s[i] = 96 + left;
}
}
}
}
cout <<"The Encrypted Text is:"<<s;
}
int main ()
{
string s;
int key;
cout<<"Enter the plain text :";
getline(cin, s);
cout<<"nEnter the key :";
cin>>key;
ceaser(s, key);
return 0;
}
PYTHON
def ceaser(text,key):
result = ""
# transverse the plain text
for i in range(len(text)):
char = text[i]
# Encrypt uppercase characters in plain text
if (char.isupper()):
result += chr((ord(char) + key-65) % 26 + 65)
# Encrypt lowercase characters in plain text
elif (char.islower()):
result += chr((ord(char) + key - 97) % 26 + 97)
elif(char.isdigit()):
result += str(int(char) + key)
elif(char == '-'):
result += '-'
elif (char.isspace()):
result += " "
return result
#check the above function
text = input("Enter your plain text:")
key = int(input("Enter the key:"))
print(ceaser(text,key))
5. TCS NQT Coding Question
We want to estimate the cost of painting a property. Interior wall painting cost is Rs.18 per sq.ft. and exterior wall painting cost is Rs.12 per sq.ft.
Take input as
1. Number of Interior walls
2. Number of Exterior walls
3. Surface Area of each Interior 4. Wall in units of square feet
Surface Area of each Exterior Wall in units of square feet
If a user enters zero as the number of walls then skip Surface area values as User may don’t want to paint that wall.
Calculate and display the total cost of painting the property
Example 1:
6
3
12.3
15.2
12.3
15.2
12.3
15.2
10.10
10.10
10.00
Total estimated Cost : 1847.4 INR
Note: Follow in input and output format as given in above example
Solution
C
C++
PYTHON
JAVA
C
#include<stdio.h>
int main()
{
int ni,ne,i=0;
float int_p=18,ext_p=12,cost=0,temp;
scanf("%d %d",&ni,&ne);
if(ni<0 || ne<0 )
{
printf("INVALID INPUT");
}
else if(ni==0 && ne==0)
{
printf("Total estimated Cost : 0.0");
}
else
{
for(i=0;i<ni;i++)
{
scanf("%f",&temp);
cost+= int_p*temp;
}
for(i=0;i<ne;i++)
{
scanf("%f",&temp);
cost+= ext_p*temp;
}
printf("Total estimated Cost : %.1f",cost);
}
return 0;
}
C++
interior_walls = int(input())
exterior_walls = int(input())
if interior_walls:
int_walls = []
for i in range(interior_walls):
int_walls.append(float(input()))
if exterior_walls:
ext_walls = []
for i in range(exterior_walls):
ext_walls.append(float(input()))
if exterior_walls < 0 or interior_walls < 0:
print(“Invalid Input”)
exit()
if exterior_walls and interior_walls:
print("Total estimated Cost : ",(sum(int_walls)*18+sum(ext_walls)*12),"INR")
else:
if exterior_walls:
print("Total estimated Cost : ",sum(ext_walls)*12,"INR")
elif interior_walls:
print("Total estimated Cost : ",sum(int_walls)*18,"INR")
else:
print("Total estimated Cost : 0.0 INR")
PYTHON
def ceaser(text,key):
result = ""
# transverse the plain text
for i in range(len(text)):
char = text[i]
# Encrypt uppercase characters in plain text
if (char.isupper()):
result += chr((ord(char) + key-65) % 26 + 65)
# Encrypt lowercase characters in plain text
elif (char.islower()):
result += chr((ord(char) + key - 97) % 26 + 97)
elif(char.isdigit()):
result += str(int(char) + key)
elif(char == '-'):
result += '-'
elif (char.isspace()):
result += " "
return result
#check the above function
text = input("Enter your plain text:")
key = int(input("Enter the key:"))
print(ceaser(text,key))
JAVA
import java.util.Scanner;
class Main {
public static void main(String[] args) {
int ni, ne, i = 0;
float intP = 18, extP = 12, cost = 0, temp;
Scanner sc = new Scanner(System.in);
ni = sc.nextInt();
ne = sc.nextInt();
if(ni < 0 || ne < 0) {
System.out.print("INVALID INPUT");
} else if(ni == 0 && ne == 0) {
System.out.print("Total estimated Cost : 0.0");
} else {
for(i = 0; i < ni; i++) {
temp = sc.nextFloat();
cost += intP * temp;
}
for(i = 0; i < ne; i++) {
temp = sc.nextFloat();
cost += extP * temp;
}
System.out.printf("Total estimated Cost : %.1f", cost);
}
}
}
6. TCS NQT Coding Question
A City Bus is a Ring Route Bus which runs in circular fashion.That is, Bus once starts at the Source Bus Stop, halts at each Bus Stop in its Route and at the end it reaches the Source Bus Stop again.
If there are n number of Stops and if the bus starts at Bus Stop 1, then after nth Bus Stop, the next stop in the Route will be Bus Stop number 1 always.
If there are n stops, there will be n paths.One path connects two stops. Distances (in meters) for all paths in Ring Route is given in array Path[] as given below:
Path = [800, 600, 750, 900, 1400, 1200, 1100, 1500]
Fare is determined based on the distance covered from source to destination stop as Distance between Input Source and Destination Stops can be measured by looking at values in array Path[] and fare can be calculated as per following criteria:
- If d =1000 metres, then fare=5 INR
- (When calculating fare for others, the calculated fare containing any fraction value should be ceiled. For example, for distance 900n when fare initially calculated is 4.5 which must be ceiled to 5)
Path is circular in function. Value at each index indicates distance till current stop from the previous one. And each index position can be mapped with values at same index in BusStops [] array, which is a string array holding abbreviation of names for all stops as-
“THANERAILWAYSTN” = ”TH”, “GAONDEVI” = “GA”, “ICEFACTROY” = “IC”, “HARINIWASCIRCLE” = “HA”, “TEENHATHNAKA” = “TE”, “LUISWADI” = “LU”, “NITINCOMPANYJUNCTION” = “NI”, “CADBURRYJUNCTION” = “CA”
Given, n=8, where n is number of total BusStops.
BusStops = [ “TH”, ”GA”, ”IC”, ”HA”, ”TE”, ”LU”, ”NI”,”CA” ]
Write a code with function getFare(String Source, String Destination) which take Input as source and destination stops(in the format containing first two characters of the Name of the Bus Stop) and calculate and return travel fare.
Example 1:
Input Values
ca
Ca
Output Values
INVALID OUTPUT
Example 2:
Input Values
NI
HA
Output Values
23.0 INR
Note: Input and Output should be in format given in example.
Input should not be case sensitive and output should be in the format INR
Solution
C++
PYTHON
C++
#include <bits/stdc++.h>
using namespace std;
int main() {
string s , d;
cin>>s>>d;
transform(s.begin(),s.end() , s.begin(),::toupper);
transform(d.begin(),d.end() , d.begin(),::toupper);
string arrs[8] = {"TH" , "GA", "IC" , "HA" , "TE", "LU" ,"NI","CA"};
float arr[8]={800,600,750,900,1400,1200,1100,1500};
float res=0;
int st ,ed;
for(int i=0;i<8;i++)
{
if(s==arrs[i])
st=i;
if(d==arrs[i])
ed=i;
}
if(st==ed)
{
cout<<" INVALID INPUT";
return 0;
}
else
{
int i=st+1;
cout<<i;
while(i!=ed+1)
{
res+=(arr[i]);
i=(i+1)%8;
}
cout<<(ceil)(res*0.005);
return 0;
}
}
PYTHON
import math
def getFare(source,destination):
route=[ [ "TH", "GA", "IC", "HA", "TE", "LU", "NI", "CA"],
[800,600,750,900,1400,1200,1100,1500]
]
fare = 0.0
if not (source in route[0] and destination in route[0]):
print("Invalid Input")
exit()
if route[0].index(source) < route[0].index(destination):
for i in range(route[0].index(source),route[0].index(destination)+1):
fare+=route[1][i]
elif route[0].index(destination) < route[0].index(source):
for i in range(route[0].index(source)+1,len(route[0])):
fare+=route[1][i]
for i in range(0,route[0].index(destination)+1):
fare+=route[1][i]
return float(math.ceil(fare*0.005))
source = input()
destination = input()
fare = getFare(source,destination)
if fare == 0:
print("Invalid Input")
else:
print(fare)
7. TCS NQT Coding Question
There are total n number of Monkeys sitting on the branches of a huge Tree. As travelers offer Bananas and Peanuts, the Monkeys jump down the Tree. If every Monkey can eat k Bananas and j Peanuts.
If total m number of Bananas and p number of Peanuts are offered by travelers, calculate how many Monkeys remain on the Tree after some of them jumped down to eat.
At a time one Monkeys gets down and finishes eating and go to the other side of the road. The Monkey who climbed down does not climb up again after eating until the other Monkeys finish eating.
Monkey can either eat k Bananas or j Peanuts.
If for last Monkey there are less than k Bananas left on the ground or less than j Peanuts left on the ground, only that Monkey can eat Bananas(<k) along with the Peanuts(<j).
Write code to take inputs as n, m, p, k, j and return the number of Monkeys left on the Tree.
Where, n= Total no of Monkeys
k= Number of eatable Bananas by Single Monkey (Monkey that jumped down last may get less than k Bananas)
j = Number of eatable Peanuts by single Monkey(Monkey that jumped down last may get less than j Peanuts)
m = Total number of Bananas
p = Total number of Peanuts
Remember that the Monkeys always eat Bananas and Peanuts, so there is no possibility of k and j having a value zero
Example 1:
Input Values
20
2
3
12
12
Output Values
Number of Monkeys left on the tree:10
Note: Kindly follow the order of inputs as n,k,j,m,p as given in the above example. And output must include the same format as in above example(Number of Monkeys left on the Tree:)
For any wrong input display INVALID INPUT
Solution
C
C++
JAVA
C
#include <stdio.h>
int main()
{
int n,k,j,m,p;
float atebanana=0.0,atepeanut=0.0;
scanf("%d %d %d %d %d",&n,&k,&j,&m,&p);
if(n<0 || k<0 || j<0 || m<0 || p<0)
{
printf("INVALID INPUT");
}
else
{
if(k>0)
atebanana =(float)m/k;
if(j>0)
atepeanut =(float) p/j;
n=n-atebanana-atepeanut;
printf("Number of Monkeys left on the Tree:%d",n);
}
return 0;
}
C++
#include <bits/stdc++.h>
using namespace std;
int main()
{
int n,k,j,m,p;
float atebanana=0.0, atepeanut=0.0;
cin>>n>>k>>j>>m>>p;
if(n<0 or k<0 or j<0 or m<0 or p<0)
{
cout<<"INVALID INPUT";
}
else
{
if(k>0)
atebanana =(float)m/k;
if(j>0)
atepeanut =(float) p/j;
n=n-atebanana-atepeanut;
cout<<"Number of Monkeys left on the Tree: "<<n;
}
return 0;
}
JAVA
import java.util.*;
class Monkeys
{
public static void main(String []args)
{
Scanner sc = new Scanner (System.in);
int n = sc.nextInt();
int k = sc.nextInt();
int j = sc.nextInt();
int m = sc.nextInt();
int p = sc.nextInt();
int atebanana=0 ,atepeanut=0;
if( n<0 && k<0 || j<0 || m<0 || p<0)
{
System.out.println("Invalid Input");
}
else
{
if(k>0)
atebanana =m/k;
if(j>0)
atepeanut = p/j;
n=n-atebanana-atepeanut;
System.out.println("Number of Monkeys left on the Tree: "+n);
}
}
}
8. TCS NQT Coding Question
Chain Marketing Organization has has a scheme for income generation, through which its members generate income for themselves.
The scheme is such that suppose A joins the scheme and makes R and V to join this scheme then A is Parent Member of R and V who are child Members.
When any member joins the scheme then the parent gets total commission of 10% from each of its child members.
Child members receive commission of 5% respectively. If a Parent member does not have any member joined under him, then he gets commission of 5%.
Take name of the members joining the scheme as input.
Display how many members joined the scheme including parent member.Calculate the Total commission gained by each members in the scheme. The fixed amount for joining the scheme is Rs.5000 on which commission will be generated
SchemeAmount = 5000
Example 1: When there are more than one child members
Input : (Do not give input prompts.Accept values as follows. )
Amit //Enter parent Member as this
Y //Enter Y if Parent member has child members otherwise enter N
Rajesh,Virat //Enter names of child members of Amit in comma separated
Output:(Final Output must be in format given below.)
TOTAL MEMBERS:3
COMISSION DETAILS
Amit: 1000 INR
Rajesh :250 INR
Virat: 250 INR
Example 2: When there is only one child member in the hierarchy
Input :
Amit
Y
Rajesh
Output:
Total Members: 2
Comission Details
Amit: 500 INR
Rajesh: 250 INR
Solution
C++
PYTHON
C++
using namespace std;
int main()
{
string par;
cin >> par;
string x;
cin >> x;
if (x == "N") {
cout << "TOTAL MEMBERS:1n";
cout << "COMISSION DETAILSn";
cout << par << ":250 INRn";
} else {
string child;
cin >> child;
vector<string>v;
string temp = "";
for (int i = 0; i < child.length(); i++) {
if (child[i] == ',') {
v.push_back(temp);
temp = "";
}
else if (child[i] != ' ')
temp += child[i];
}
v.push_back(temp);
cout << "TOTAL MEMBERS:" << v.size() + 1 << "n";
cout << "COMISSION DETAILSn";
cout << par << ":" << v.size() * 500 << " INRn";
for (auto a : v) {
cout << a << ":" << "250 INRn";
}
}
}
PYTHON
parent = input()
Yes_No = input()
if Yes_No == "N":
print("TOTAL MEMBERS:1nCOMMISSION DETAILSn{0}: 250 INR".format(parent))
elif Yes_No == "Y":
child=list(map(str,input().split(",")))
print("TOTAL MEMBERS:{}".format(len(child)+1))
print("COMMISSION DETAILS n{0}:{1} INR".format(parent,len(child)*500))
for i in child:
print("{0}:250 INR".format(i))
9. TCS NQT Coding Question
FULLY AUTOMATIC VENDING MACHINE – dispenses your cuppa on just press of button. A vending machine can serve range of products as follows:
Coffee
- Espresso Coffee
- Cappuccino Coffee
- Latte Coffee
Tea
- Plain Tea
- Assam Tea
- Ginger Tea
- Cardamom Tea
- Masala Tea
- Lemon Tea
- Green Tea
- Organic Darjeeling Tea
Soups
- Hot and Sour Soup
- Veg Corn Soup
- Tomato Soup
- Spicy Tomato Soup
Beverages
- Hot Chocolate Drink
- Badam Drink
- Badam-Pista Drink
Write a program to take input for main menu & sub menu and display the name of sub menu selected in the following format (enter the first letter to select main menu):
Welcome to CCD
Enjoy your
Example 1:
- Input:
- c
- 1
- Output
- Welcome to CCD!
- Enjoy your Espresso Coffee!
Example 2:
- Input
- t
- 9
- Output
- INVALID OUTPUT!
Solution
C
PYTHON
C++
C
#include <stdio.h>
int main()
{
char c[3][20]={"Espresso Coffee","Cappuccino Coffee","Latte Coffee"};
char t[8][30]={"Plain Tea","Assam Tea","Ginger Tea","Cardamom Tea","Masala Tea","Lemon Tea","Green Tea","Organic Darjeeling Tea"};
char s[4][20]={"Hot and Sour Soup","Veg Corn Soup","Tomato Soup","Spicy Tomato Soup"};
char b[3][20]={"Hot Chocolate Drink","Badam Drink","Badam-Pista Drink"};
char str[]="Welcome to CCD!nEnjoy your ";
char ch;
int item, i;
scanf("%c",&ch);
scanf("%d",&item);
if(ch=='c')
{
for(i=0; i<3; i++)
{
if(item==i+1)
{
printf("Welcome to CCD!nEnjoy your %s!",c[i]);
break;
}
}
if(i==3)
{
printf("INVALID OPTION!");
}
}
else if(ch=='t')
{
for(i=0; i<8; i++)
{
if(item==i+1)
{
printf("Welcome to CCD!nEnjoy your %s!",t[i]);
break;
}
}
if(i==8)
{
printf("INVALID OPTION!");
}
}
else if(ch=='s')
{
for(i=0; i<4; i++)
{
if(item==i+1)
{
printf("Welcome to CCD!nEnjoy your %s!",s[i]);
break;
}
}
if(i==4)
{
printf("INVALID OPTION!");
}
}
else if(ch=='b')
{
for(i=0; i<3; i++)
{
if(item==i+1)
{
printf("Welcome to CCD!nEnjoy your %s!",b[i]);
break;
}
}
if(i==3)
{
printf("INVALID OPTION!");
}
}
else
{
printf("INVALID INPUT!");
}
return 0;
}
PYTHON
menu = [['Espresso Coffee','Cappuucino Coffee','Latte Coffee'], ['Plain Tea',
'Assam Tea','Ginger Tea','Cardamom Tea','Masala Tea','Lemon Tea','Green Tea',
'Organic Darjeeling Tea'], ['Hot and Sour Soup','Veg Corn Soup','Tomato Soup',
'Spicy Tomato Soup'], ['Hot Chocolate Drink', 'Badam Drink',
'Badam-Pista Drink']]
m = input()
if m=='c' or m=='t' or m=='s' or m=='b':
if m=='c':
submenu = int(input())
if submenu in range(3):
print('Welcome to CCD!nEnjoy your {}!'.format(menu[0][submenu-1]))
else:
print("INVALID INPUT")
if m=='t':
submenu = int(input())
if submenu in range(8):
print('Welcome to CCD!nEnjoy your {}!'.format(menu[1][submenu-1]))
else:
print("INVALID INPUT")
if m=='s':
submenu = int(input())
if submenu in range(4):
print('Welcome to CCD!nEnjoy your {}!'.format(menu[2][submenu-1]))
else:
print("INVALID INPUT")
if m=='b':
submenu = int(input())
if submenu in range(3):
print('Welcome to CCD!nEnjoy your {}!'.format(menu[3][submenu-1]))
else:
print("INVALID INPUT")
else:
print("INVALID INPUT!")
C++
#include <bits/stdc++.h>
using namespace std;
int main()
{
string c[3]={"Espresso Coffee","Cappuccino Coffee","Latte Coffee"};
string t[8]={"Plain Tea","Assam Tea","Ginger Tea","Cardamom Tea","Masala Tea","Lemon Tea","Green Tea","Organic Darjeeling Tea"};
string s[4]={"Hot and Sour Soup","Veg Corn Soup","Tomato Soup","Spicy Tomato Soup"};
string b[3]={"Hot Chocolate Drink","Badam Drink","Badam-Pista Drink"};
char ch;
int n;
string res = "";
cin>>ch>>n;
if(ch=='c' and n <= 3)
res = c[n-1];
else if(ch=='t' and n <= 8)
res = t[n-1];
else if(ch=='s' and n <= 4)
res = s[n-1];
else if(ch=='b' and n <= 3)
res = b[n-1];
else res = "Invalid Input";
if(res != "Invalid Input" )
cout<<"Welcome to CCD!nEnjoy your "<<res;
else cout<<res;
return 0;
}
10. TCS NQT Coding Question
A doctor has a clinic where he serves his patients. The doctor’s consultation fees are different for different groups of patients depending on their age. If the patient’s age is below 17, fees is 200 INR. If the patient’s age is between 17 and 40, fees is 400 INR. If patient’s age is above 40, fees is 300 INR. Write a code to calculate earnings in a day for which one array/List of values representing age of patients visited on that day is passed as input.
Note:
- Age should not be zero or less than zero or above 120
- Doctor consults a maximum of 20 patients a day
- Enter age value (press Enter without a value to stop):
Example 1:
- Input
20
30
40
50
2
3
14
- Output
Total Income 2000 INR
Note: Input and Output Format should be same as given in the above example.
For any wrong input display INVALID INPUT
Output Format
- Total Income 2100 INR
Solution
PYTHON
C++
PYTHON
age = []
for i in range(20):
m = input()
if m == "":
break
elif int(m) in range(0,120):
age.append(int(m))
else:
print("INVALID INPUT")
exit()
fees = 0
for i in age:
if i < 17:
fees+=200
elif i <40:
fees+=400
else:
fees+=300
print("Total Income {} INR".format(fees))
C++
#include <bits/stdc++.h>
using namespace std;
int main()
{
int x, count =0, flag = 0, fee_sum=0;
while(cin>>x){
if(x<=0 and x>120)
{
flag=1;
break;
}
count++;
if(x<17) fee_sum +=200;
else if(x>=17 and x<=40) fee_sum += 400;
else fee_sum += 300;
}
if(count >20 and flag != 1)
cout<<"INVALID INPUT";
else cout<<"Total income : "<<fee_sum<<" INR";
return 0;
}
11. TCS NQT Coding Question
Checking if a given year is leap year or not
Explanation:
To check whether a year is leap or not
Step 1:
- We first divide the year by 4.
- If it is not divisible by 4 then it is not a leap year.
- If it is divisible by 4 leaving remainder 0
Step 2:
- We divide the year by 100
- If it is not divisible by 100 then it is a leap year.
- If it is divisible by 100 leaving remainder 0
Step 3:
- We divide the year by 400
- If it is not divisible by 400 then it is a leap year.
- If it is divisible by 400 leaving remainder 0
Then it is a leap year
Solution
PYTHON
C++
C
PYTHON
#python program to check if a year number taken from the user is a leap year or not, using nested if-else.
num = int(input("Enter the year you want to check if is leap year or not: "))
#take input year from the user to check if it is a leap year
if(num%4 == 0):
#check if the number is divisible by 4 and if true move to next loop
if(num%100 == 0):
#check if the input year is divisible by 100 and if true move to next loop
if(num%400 == 0):
print("The year {} is a leap year".format(num))
#the input year is divisible by 4, 100 and 400, hence leap year.
else:
print("The year {} is Not a leap year".format(num))
else:
print("The year {} is a leap year".format(num))
#if the number is divisible by both 4 and 100 it is a leap year
else:
print("The year {} is Not a leap year".format(num))
#if the input num is not divisible by 4 then it can not be a leap year altogether.
C++
//C++ Program
//Leap year or not
#include<stdio.h>
using namespace std;
//main program
int main()
{
//initialising variables
int year;
cout<<"Enter year to check: ";
//user input
cin>>year;
//checking for leap year
if( ((year % 4 == 0)&&(year % 100 != 0)) || (year % 400==0) )
{
//input is a leap year
cout<<year<<" is a leap year";
}
else
{
//input is not a leap year
cout<<year<< " is not a leap year";
}
return 0;
}
C
#include<stdio.h>
int leapprog(int year)
{
//checking divisibility by 4
if(year%4 == 0)
{
//checking divisibility by 100
if( year%100 == 0)
{
//checking divisibility by 400
if ( year%400 == 0)
printf("%d, the year entered happens to be a leap year", year);
else
printf("%d is surely not a leap year", year);
}
else
printf("%d, the year entered happens to be a leap year", year );
}
else
printf("%d is surely not a leap year", year);
return 0;
}
int main()
{
int input_year, val;
printf("Enter the year that you want to check"); //enter the year to check
scanf("%d",&input_year);
val = leapprog(input_year);
return 0;
}
#include<stdio.h>
int leapprog(int year)
{
//checking divisibility by 4
if(year%4 == 0)
{
//checking divisibility by 100
if( year%100 == 0)
{
//checking divisibility by 400
if ( year%400 == 0)
printf("%d, the year entered happens to be a leap year", year);
else
printf("%d is surely not a leap year", year);
}
else
printf("%d, the year entered happens to be a leap year", year );
}
else
printf("%d is surely not a leap year", year);
return 0;
}
int main()
{
int input_year, val;
printf("Enter the year that you want to check"); //enter the year to check
scanf("%d",&input_year);
val = leapprog(input_year);
return 0;
}
#include<stdio.h>
int leapprog(int year)
{
//checking divisibility by 4
if(year%4 == 0)
{
//checking divisibility by 100
if( year%100 == 0)
{
//checking divisibility by 400
if ( year%400 == 0)
printf("%d, the year entered happens to be a leap year", year);
else
printf("%d is surely not a leap year", year);
}
else
printf("%d, the year entered happens to be a leap year", year );
}
else
printf("%d is surely not a leap year", year);
return 0;
}
int main()
{
int input_year, val;
printf("Enter the year that you want to check"); //enter the year to check
scanf("%d",&input_year);
val = leapprog(input_year);
return 0;
}
#include<stdio.h>
int leapprog(int year)
{
//checking divisibility by 4
if(year%4 == 0)
{
//checking divisibility by 100
if( year%100 == 0)
{
//checking divisibility by 400
if ( year%400 == 0)
printf("%d, the year entered happens to be a leap year", year);
else
printf("%d is surely not a leap year", year);
}
else
printf("%d, the year entered happens to be a leap year", year );
}
else
printf("%d is surely not a leap year", year);
return 0;
}
int main()
{
int input_year, val;
printf("Enter the year that you want to check"); //enter the year to check
scanf("%d",&input_year);
val = leapprog(input_year);
return 0;
}
#include<stdio.h>
int leapprog(int year)
{
//checking divisibility by 4
if(year%4 == 0)
{
//checking divisibility by 100
if( year%100 == 0)
{
//checking divisibility by 400
if ( year%400 == 0)
printf("%d, the year entered happens to be a leap year", year);
else
printf("%d is surely not a leap year", year);
}
else
printf("%d, the year entered happens to be a leap year", year );
}
else
printf("%d is surely not a leap year", year);
return 0;
}
int main()
{
int input_year, val;
printf("Enter the year that you want to check"); //enter the year to check
scanf("%d",&input_year);
val = leapprog(input_year);
return 0;
}
#include<stdio.h>
int leapprog(int year)
{
//checking divisibility by 4
if(year%4 == 0)
{
//checking divisibility by 100
if( year%100 == 0)
{
//checking divisibility by 400
if ( year%400 == 0)
printf("%d, the year entered happens to be a leap year", year);
else
printf("%d is surely not a leap year", year);
}
else
printf("%d, the year entered happens to be a leap year", year );
}
else
printf("%d is surely not a leap year", year);
return 0;
}
int main()
{
int input_year, val;
printf("Enter the year that you want to check"); //enter the year to check
scanf("%d",&input_year);
val = leapprog(input_year);
return 0;
}v
12. TCS NQT Coding Question
Prime Numbers with a Twist
Ques. Write a code to check whether no is prime or not. Condition use function check() to find whether entered no is positive or negative ,if negative then enter the no, And if yes pas no as a parameter to prime() and check whether no is prime or not?
- Whether the number is positive or not, if it is negative then print the message “please enter the positive number”
- It is positive then call the function prime and check whether the take positive number is prime or not.
Solution
PYTHON
C++
C
PYTHON
def prime(n):
if n > 1:
for i in range(2, n):
if (n % i) == 0:
print(n, "is not a prime number")
break
else:
print(n, "is a prime number")
num = int(input("enter a number: "))
if (num > 0):
prime(num)
else:
print("please enter a positive number")
C++
//C++ Program
//Prime Number
#include
using namespace std;
//function declaration
void enter();
void check(int);
void prime(int);
//main program
int main()
{
enter();
return 0;
}
//function to enter value
void enter()
{
int num;
cout<<"Enter number:";
cin>>num;
check(num);
}
//function to check whether the input is positive or negative
void check(int num)
{
if(num<0)
{
cout<<"invalid input enter value again"<<endl;
enter();
}
else
{
prime(num);
}
}
//function to check for prime number
void prime(int num)
{
int i,div=0;
for(i=1;i<=num;i++)
{
if(num%i==0)
{
div++;
}
}
//prime number only have two divisors
if(div==2)
{
cout<<num<<" is a prime number";
}
//not a prime number
else
{
cout<}
Output:
Enter number:29
29 is a prime number.
C
#include<stdio.h>
void prime(int n)
{
int c=0;
for(int i=2;i<n;i++)
{
if(n%i==0)
c = c+1;
}
if(c>=1)
printf("%d is not a prime number",n);
else
printf("%d is a prime number",n);
}
void main()
{
int n;
printf("Enter no : "); //enter the number
scanf("%d",&n);
if(n<0)
{
printf("Please enter a positive integer");
}
else
prime(n);
}