Program to print reciprocal of letters
View Discussion
Improve Article
Save Article
Like Article
- Difficulty Level : Medium
- Last Updated : 16 Nov, 2021
Given a string S, we need to find reciprocal of it. The reciprocal of the letter is found by finding the difference between the position of the letter and first letter ‘A’. Then moving the same number of steps from letter ‘Z’. The character that we reach after above steps is reciprocal.
Reciprocal of Z is A and vice versa because if you reverse the position of the alphabet A will be in the position of Z.
Similarly, T is the reciprocal of G, J is the reciprocal of Q.
Examples :
Input : PRAKHAR Output : KIZPSZI Input : VARUN Output : EZIFM
Just use a mathematical formula which gives the reciprocal of each character
Reciprocal(x) = ASCII(‘Z’) – ASCII(x) + ASCII(‘A’)
The ASCII value of Z and A will change according
to the uppercase and lowercase.
C++
// CPP program to find Reciprocal string
#include <bits/stdc++.h>
using
namespace
std;
// To print reciprocal string
void
reciprcalString(string word)
{
char
ch;
for
(
int
i = 0; i < word.length(); i++) {
// converting uppercase character
// To reciprocal character
// display the character
if
(
isupper
(word[i])) {
ch =
'Z'
- word[i] +
'A'
;
cout << ch;
}
// converting lowercase character
// To reciprocal character
// display the character
else
if
(
islower
(word[i])) {
ch =
'z'
- word[i] +
'a'
;
cout << ch;
}
else
{
cout << word[i];
}
}
}
// Driver function
int
main()
{
string s =
"Geeks for Geeks"
;
cout <<
"The reciprocal of "
<< s
<<
" is - "
<< endl;
reciprcalString(s);
return
0;
}
Java
// JAVA program to illustrate...
// Reciprocal Letters
import
java.io.*;
import
java.math.*;
import
java.text.*;
import
java.util.*;
import
java.util.regex.*;
public
class
GFG {
// function to print
// the reciprocal
static
void
Reciprcalstring(String word)
{
char
ch;
for
(
int
i =
0
; i < word.length(); i++) {
ch = word.charAt(i);
// Checking if the character
// is a letter or not
if
(Character.isLetter(ch)) {
// converting lowercase character
// To reciprocal character
if
(Character.isLowerCase(ch)) {
ch = (
char
)(
122
- (
int
)(ch) +
97
);
}
// converting uppercase character
// To reciprocal character
else
if
(Character.isUpperCase(ch)) {
ch = (
char
)(
90
- (
int
)(ch) +
65
);
}
}
// display each character
System.out.print(ch);
}
}
// Driver function
public
static
void
main(String[] args)
{
// static input
String s =
"Geeks for Geeks"
;
System.out.print(
"The reciprocal of "
+ s +
" is - "
+
"\n"
);
// calling the function
Reciprcalstring(s);
}
}
Python3
# Python3 program to find Reciprocal string
# to check for UPPERCASE
def
isupper(ch):
if
ch >
=
'A'
and
ch <
=
'Z'
:
return
True
return
False
# to check for LOWERCASE
def
islower(ch):
if
ch >
=
'a'
and
ch <
=
'z'
:
return
True
return
False
# To print reciprocal string
def
reciprocalString(word):
ch
=
''
for
i
in
range
(
len
(word)):
# converting uppercase character
# To reciprocal character
# display the character
if
isupper(word[i]):
ch
=
chr
(
ord
(
'Z'
)
-
ord
(word[i])
+
ord
(
'A'
))
(ch, end
=
"")
# converting lowercase character
# To reciprocal character
# display the character
elif
islower(word[i]):
ch
=
chr
(
ord
(
'z'
)
-
ord
(word[i])
+
ord
(
'a'
))
(ch, end
=
"")
else
:
(word[i], end
=
"")
# Driver Code
if
__name__
=
=
"__main__"
:
s
=
"Geeks for Geeks"
(
"The reciprocal of"
, s,
"is - "
)
reciprocalString(s)
# This code is contributed by
# sanjeev2552
C#
// C# program to find Reciprocal string
using
System;
class
GFG {
// function to print the reciprocal
static
void
Reciprcalstring(
string
word)
{
char
ch;
for
(
int
i = 0; i < word.Length; i++) {
ch = word[i];
// Checking if the character
// is a letter or not
if
(Char.IsLetter(ch) && ch < 128) {
// converting lowercase character
// To reciprocal character
if
(
char
.IsLower(ch)) {
ch = (
char
)(122 - (
int
)(ch) + 97);
}
// converting uppercase character
// To reciprocal character
else
if
(
char
.IsUpper(ch)) {
ch = (
char
)(90 - (
int
)(ch) + 65);
}
}
// display each character
Console.Write(ch);
}
}
// Driver function
public
static
void
Main()
{
string
s =
"Geeks for Geeks"
;
Console.Write(
"The reciprocal of "
+ s +
" is - "
+
"\n"
);
// calling the function
Reciprcalstring(s);
}
}
// This code is contributed by Sam007
PHP
<?php
// PHP program to find
// Reciprocal string
function
check_lowercase_string(
$string
)
{
return
(
$string
===
strtolower
(
$string
));
}
function
check_uppercase_string(
$string
)
{
return
(
$string
===
strtoupper
(
$string
));
}
// function to print
// the reciprocal
function
Reciprcalstring(
$word
)
{
$ch
;
for
(
$i
= 0;
$i
<
strlen
(
$word
);
$i
++)
{
$ch
=
$word
[
$i
];
// Check if space,
// then print it
if
(
$ch
==
' '
)
echo
(
$ch
);
// converting lowercase character
// To reciprocal character
else
if
(check_lowercase_string(
$ch
))
{
$ch
=
chr
(122 -
ord(
$ch
) + 97);
}
// converting uppercase character
// To reciprocal character
else
if
(check_uppercase_string(
$ch
))
{
$ch
=
chr
(90 -
ord(
$ch
) + 65);
}
// display each
// character
echo
(
$ch
);
}
}
// Driver Code
$s
=
"Geeks for Geeks"
;
echo
(
"The reciprocal of "
.
$s
.
" is - "
.
"\n"
);
// calling the function
Reciprcalstring(
$s
);
// This code is contributed by
// Manish Shaw(manishshaw1)
?>
Javascript
<script>
// javascript program to illustrate...
// Reciprocal Letters
function
isLetter(ch){
if
(ch>=
'a'
&& ch<=
'z'
|| ch>=
'A'
&& ch<=
'Z'
)
return
true
;
else
return
false
;
}
function
isLowerCase(ch){
if
(ch>=
'a'
&& ch<=
'z'
)
return
true
;
else
return
false
;
}
function
isUpperCase(ch){
if
( ch>=
'A'
&& ch<=
'Z'
)
return
true
;
else
return
false
;
}
// function to print
// the reciprocal
function
Reciprcalstring( word) {
var
ch;
for
(
var
i = 0; i < word.length; i++) {
ch = word.charAt(i);
// Checking if the character
// is a letter or not
if
(isLetter(ch)) {
// converting lowercase character
// To reciprocal character
if
(isLowerCase(ch)) {
ch =String.fromCharCode(122 -ch.charCodeAt(0) + 97);
}
// converting uppercase character
// To reciprocal character
else
if
(isUpperCase(ch)) {
ch =String.fromCharCode(90- ch.charCodeAt(0) + 65);
}
}
// display each character
document.write(ch);
}
}
// Driver function
// input
var
s =
"Geeks for Geeks"
;
document.write(
"The reciprocal of "
+ s +
" is - "
+
"<br\>"
);
// calling the function
Reciprcalstring(s);
// This code is contributed by umadevi9616
</script>
Output:
The reciprocal of Geeks for Geeks is - Tvvph uli Tvvph
My Personal Notes arrow_drop_upRecommended ArticlesPage :Article Contributed By :Improved By :Practice Tags :