3 like 0 dislike
5.9k views

You have received an encrypted message from Julius Caesar-- the message is ebiil.  You are asked to decipher the message in order to understand what Caesar trying to say to you.

Hint

Luckily, Caesar has given you a hint, he says: 'I, myself, encoded the message by shifting every word backwards by 3.' 

Solution

Write a program that receives 5 characters 'ebiil'. Then decode those characters into 5 new characters.

Example

#include <stdio.h>

int main(int argc, char *argv[]) {


	char a;
    	char b;
	 	
	scanf("%c%c", &a, &b);
	
	//decode the message how??
	
	printf("%c%c", a,b);
	
	return 0;
}

Input

ebiil

 

 

 

 

 

 

 

 

 

 

Output

hello

** REMEMBER ** 
This is an online-compiler, don't put anything except the codes. If you want to make a comment, please use // or /* */

[Exercise] Coding (C) - asked in Chapter 2: Syntax structure of the C language by (5.9k points)
ID: 26955 - Available when: Unlimited - Due to: Unlimited

edited by | 5.9k views

22 Answers

0 like 0 dislike
Hidden content!
* ** ** * * ** *

int * argc, char **** {
* * * * * * * * */

* * * * ** int number;
* ** * * char a;
******** *** * ** * b;
** **** ***** * ***** ** ** c;
*** * * * * ** ** ** d;
* *** * * * ***** **** * * e;
* ** * * ****** *** *
* * * * * * ** * **** forgert how to shift word ** ** * * * *
* ** ** ** ***** * * ***** *** ** * * * ** * ** * ** * * *
*** * **** *
**** * * * * * the message how??
* ** * * ***
** * * * * * ** * * *** ** * * ***
** * * ***
** * * ** return 0;
}
100/100 answered by (449 points)
edited by
0 0
Case 0: Wrong output
Case 1: Wrong output
0 0
Case 0: Correct output
Case 1: Wrong output
0 like 0 dislike
Hidden content!
* ** * * * * * *

** ** * * ** {

* ***
= * *
* ** *
= * ****
= ***
= **

** = *
=
* = ***
** = *

* *
* * **
* * **
*** *
*** * *

**** * * * *** **
100/100 answered by (153 points)
0 0
Case 0: Correct output
Case 1: Wrong output
1 like 0 dislike
Hidden content!
#include *** ***** * *
#include ****** * * * **** *

/* run this program using the console pauser or add your own getch, * ** ** or input loop */

int main(int argc, char *argv[]) {
*** * * * * * ** * *** a;
* ** * * *** ******** b;
* * * * * *** **** ** * ** * c;
* * ** * * * *** d;
* * * ** * ** ** * e;
* * * * * **** ********
*** ** * * * ***** * ** ******** * the words you want to ** ** *
* * * ** ** ** ** ** *
* *** * * ** * * = getchar();
**** * ** **** *** = a+3;
* ********** * * ** ** * ** **
* * * ** *** * * ** = getchar();
* * * * * *** * * ** = b+3;
** **** ** *** * ** ***** *
** *** *** * = getchar();
* ** * ** ** ***** = c+3;
** **** * **** ** *** * *
*** ** * *** * * *** = getchar();
** **** * ** ** * * ** = d+3;
*** *** * ** ** ** * * * *
** * **** * * * * * = getchar();
**** * * * * ** = e+3;
**** *** * *** ** ** * * *
* * ******* ****** **** ***** ** *** *** * ***** ***
** * ** ******* ***** **** ** **** ** ** ***** * &a, &b, &c, &d, * * **
* ** * * * *** * ***
* *** * ** * * * ** ** *** the message how??
* ** ****** * *** * *
**** *** ******* * ***** ** ****** * ** *** * * * a, b, c, d, e);
*** * * * * * *** *
* * * *** ** * * *** * ** 0;
}
100/100 answered by (281 points)
edited by
0 0
Your program receives only 2 characters, and it doesn't move characters' positions.

Try to make it receive 5 characters, and move their positions forward by 3.
0 0
This exercise expects only 'hello'. However, your code has.....

printf("Put the words you want to decode:");

Kindly consider delete this part :)
1 like 0 dislike
Hidden content!
* **** ** * *
* ** **

int * * * ** char *** {
/*
* ** * */

* * * ***

** * * * * ** **** * ** * ******** **** * ** **
a = a+3;
b = *
c = ** *
d = d+3;
e = * *

**** the ** *
** ** * **
** * ** * * * ******

* * *** * ***** * *
* ** ** * * * * * ** ***** 0;
}
100/100 answered by (273 points)
edited by
0 0
prog.c:28:1: error: unknown type name 'INPUT'
 INPUT
 ^~~~~
prog.c:32:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OUTPUT'
 OUTPUT
 ^~~~~~
prog.c:32:1: error: unknown type name 'OUTPUT'
0 0
Your program can end at
  
    return 0;
}
------------------------------------------
You don't need to put

INPUT

ebiil

OUTPUT

hello
0 0
Case 0: Correct output
Case 1: Wrong output
1 like 0 dislike
Hidden content!
*** * ** * *
** *** * ** * **** *

/* run this * * * *** the ** ** * or add your own * * ** * * **** ** * * or * * */

int ** ** ** char ** {
* ***** ***** int num, ***
* * * * * *
* *
*** * ** * * * * ** ** *** **
** *** *** ** * for = ** ** *** *
{
* ** * *** * * * = * * *
**** *** **** if ** * ** * *
* * * **** = * ** ****
* * * * *** * **
}
* ***** ** * * * ***** * ***
** * * * * * 0;
50/100 answered by (252 points)
0 0
prog.c: In function 'main':
prog.c:19:2: error: expected declaration or statement at end of input
  return 0;
  ^~~~~~
0 0
Great job using an array and a loop. There are two mistakes found in your code. Please check
1.     printf("\n\n%s", code);  <--- in order to make it match the fixed output '\n\n' should be deleted
2.     At the end of your code, there's something missing.
1 like 0 dislike
Hidden content!
* ** * ** * * ** *

* * **** **** *** *

* * ** ** * * ** * * *** * ** ** *** ** **** ** ** * **

*** *** * * * ** **

* *

* * * * *

* * * ** * ** * ** * * * * * * * * * * * ** **** **** *

= * *
*
* * b + **

= c + **

= d +

* *
*
*** ****** * * * * ** * * * **

* *

100/100 answered by (268 points)
0 0
It's correct lol you can't judge me
0 0
Well, that's because your output doesn't match with the fixed answer. Please take a look at this
printf("%c%c%c%c%c\n", a1, b1, c1, d1, e1);

Hint: You should delete something  :)

By the way, great job.
0 0
printf("%c%c%c%c%c", a1, b1, c1, d1, e1);

How's that?
0 0
That's correct.
1 like 0 dislike
Hidden content!
* ** ** **
* * ** * * * *

int * *** argc, char ** * ** {
**** * * *** char **
* ****** **** char * ****
* * * * * * char * *
**** ** * * char * * *
****** * **** * char **
* * * ** *
* * *** ** ** * ** * ** input the letter to * * * *
* *** * *
*** * * * ** * * *** * * *** * ** ** * **** ** ** * * * ** * ** ***** ** **** ** *
* *** * * ** * = ** + 3;
**** * * * * ** = * ** + 3;
**** ** * * * * * = + 3;
** * ** ** *** letterc = ** *** + 3;
** ** * * * ** *** = ** + 3;
* ** ** *
* **** * * * * ** * * ** ** * * ** * ** * * *
* * * **
* ** ** return 0;
}
100/100 answered
reshown by
0 0
-----------Re-judge-----------
Case 0: Wrong output
0 0
Nice, it is correct. You might be wondering why your automatically-generated score is 0.
That's because it expects its output to be only 'hello'. However, what your program showed was:
     Please input the letter to encode: ebiil
     hello

Anyway, great job. Full marks.
1 like 0 dislike
Hidden content!
* ** * **** *****
* * * * *** * ** **

int * * ** argc, char *argv[]) {
**** *** * char
* * * ** * * * * char letteri;
* **** ** * char ** *
** * ** * * char **
** * * **** * char **** *
* * ** ***** *
* ** ** *** ** ** ** * input the letter to encode: * **** * ** * * *
* * **** *
* * * * *** * * * * * * ***** * ** ** * **** ** ** **** ***** ** * ******** * *
* *** * * * * ** +3;
* * ******* **** +3;
* * * ** * * ** ** +3;
* * ** * ***** * +3;
* ***** * *** *** +3;
* * * ** *
* * ** *
* **** * ** * ** *** * ** *** ** * * ** * * ** ****
* *** ** **
** * **** ** return 0;
}


INPUT
* * *** * *
* * * ** ****
OUTPUT
**** ** ** *
100/100 answered by (269 points)
0 0
Nice, it is correct. You might be wondering why your automatically-generated score is 0.
That's because it expects its output to be only 'hello'. However, what your program showed was:
     Please input the letter to encode: ebiil
     hello

Also, it's an online compiler, if you want to make a comment don't forget to use //. For example, //input ebiil
//output hello

Anyway, great job. Full marks.
0 0
prog.c:27:1: error: unknown type name 'INPUT'
 INPUT
 ^~~~~
prog.c:30:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OUTPUT'
 OUTPUT
 ^~~~~~
prog.c:30:1: error: unknown type name 'OUTPUT'
1 like 0 dislike
Hidden content!
**** * * * **** *
** ** * ** * **

int *** argc, char ** * * {
** * ** * char *****
**** ** * char ** ***
* * * ** char ** *
** * *** * char * *
***** * * ** char **
* **** * ******
**** *** ** ** * * * input the * to * * * *** * *
**** ** *
**** ** * * * * ****** * ****** * * ** * * ** ** * *** * * *** ** * *** * **
** *
* letter = letter + 3;
* * * ** * * * = * ** + 3;
***** * ***** = ** + 3;
* * ** * * = ** * + 3;
* ** * *** ** * * * = ** + 3;
* * ** * **
* * *** *** * * * * * * * * letter is ** * * * * ** * * ** * *
** ****
* * * * ** return 0;
}

INPUT
* *** * *
**** * ***
* **
** **** * *
100/100 answered by (290 points)
reshown by
0 0
Nice, it is correct. You might be wondering why your automatically-generated score is 0.
That's because it expects its output to be only 'hello'. However, what your program showed was:
     Please input the letter to encode: ebiil
     The encrypted letter is hello

Also, it's an online compiler, if you want to make a comment don't forget to use //. For example, //input ebiil
//output hello

Anyway, great job. Full marks.
0 0
prog.c:26:1: error: unknown type name 'INPUT'
 INPUT
 ^~~~~
prog.c:29:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OUTPUT'
 OUTPUT
 ^~~~~~
prog.c:29:1: error: unknown type name 'OUTPUT'
1 like 0 dislike
Hidden content!
#include *** * *** *

int main(int argc, char *argv[]) {
** * ** *** * * lettera;
* * *** ** *** *** * *** letterb;
*** * ** * ***** *** letterc;
***** **** * * **** * * letterd;
**** *** ** ** *** **** lettere;
* * ****** ** * * **
*** * * *** * ** ** ** *** * %c %c %c *** * * ***** * * ****** * * *** ** *** ***** * *
* * ****** * * ****** ** ****** = lettera + 3;
* * ** ** ** **** * ** ** = letterb + 3;
*** ** * *** **** ** ** = letterc + 3;
** * * *** ** * ** * = letterd + 3;
* * * *** * **** * * ** * = lettere + 3;
***** ******* * * ** **** ** * *** * * * * *
* * ***** ****** *** * *** * *** * %c %c %c * * ** **** letterb, **** ** * **
* * ** *** * *** *** ** **
* * * * ***** * * 0;
}

*
* *
***** * * * **
***
//hello
100/100 answered by (271 points)
edited by
0 0
Nice, it is correct. You might be wondering why your automatically-generated score is 0.
That's because it expects its output to be only 'hello'. However, what your program showed was:
     Please input the letter to encode: e b i i l
     h e l l o

Also, it's an online compiler, if you want to make a comment don't forget to use //. For example, //input ebiil
//output hello

Anyway, great job. Full marks.
0 0
prog.c:25:1: error: unknown type name 'INPUT'
 INPUT
 ^~~~~
prog.c:28:1: error: expected '=', ',', ';', 'asm' or '__attribute__' before 'OUTPUT'
 OUTPUT
 ^~~~~~
prog.c:28:1: error: unknown type name 'OUTPUT'
0 0
prog.c: In function 'main':
prog.c:10:5: warning: implicit declaration of function 'scanf' [-Wimplicit-function-declaration]
     scanf("%c %c %c %c %c", &lettera, &letterb, &letterc, &letterd, &lettere);
     ^~~~~
prog.c:10:5: warning: incompatible implicit declaration of built-in function 'scanf'
prog.c:10:5: note: include '<stdio.h>' or provide a declaration of 'scanf'
prog.c:17:5: warning: implicit declaration of function 'printf' [-Wimplicit-function-declaration]
     printf("%c %c %c %c %c", lettera, letterb, letterc, letterd, lettere);
     ^~~~~~
prog.c:17:5: warning: incompatible implicit declaration of built-in function 'printf'
prog.c:17:5: note: include '<stdio.h>' or provide a declaration of 'printf'
Welcome to Peer-Interaction Programming Learning System (PIPLS) LTLab, National DongHwa University
English 中文 Tiếng Việt
IP:172.69.214.38
©2016-2025

Related questions

0 like 0 dislike
2 answers
[Normal] Essay (Open question) - asked Dec 12, 2017 in Chapter 2: Syntax structure of the C language by 許哲瑋 (449 points)
ID: 37081 - Available when: Unlimited - Due to: Unlimited
| 909 views
12,783 questions
183,442 answers
172,219 comments
4,824 users