C/C++ :: Shifting Characters - How To Make Letters Loop Back To The Start
Feb 9, 2015
I have to make a function that i'll later be able to use for a ceasar cypher. The letters should shift a user inputted number. This is what I have so far:
char shiftChar(char c, int s) {
char ch = c;
int shift = s;
int newC;
newC = int(ch) + shift;
return newC;
}
The problem with this, is that it doesn't loop back to the start of the alphabet once i get past z.
View 2 Replies
ADVERTISEMENT
Mar 25, 2014
Value x is a 32-bit unsigned integer 3:
00000000000000000000000000000011
If we use bitwise-shift to shift all bits to the right by 2, x is 0:
00000000000000000000000000000000
If we then do a bitwise leftshift on x by 30, do we end up with:
11000000000000000000000000000000
or
00000000000000000000000000000000
In other words, when we perform right shift which clips away the least most significant bits, and then do a left shift, is it possible for those bits to reappear?
View 2 Replies
View Related
Feb 15, 2015
I have tried to submit this topic before but i didn't submit my whole code and it was removed. So here it is. All I am trying to do is load form2 from form1 then back to form1 from form2 for a certain number of times the get out of the loop. I am new to C-Sharp and it seems as though I cant seem to figure out a way to do this.
Here is form1 and form2 code. I have commented out a few things I have tried.
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
[Code]....
View 3 Replies
View Related
Mar 29, 2013
I plan to read one character at a time from a very large text file.
The tokens that I would like to extract are basically words and they are delimited by varying numbers of spaces or tabs.
For example, the first line has two words separated by five spaces:
Joe Mark
Problem:I apply get() each time advancing towards Mark. For me to know ive reached the next token, Mark, I merely have to get() until it equals 'M'. The problem by then its too late as Ive already captured 'M'. I somehow need to capture the fifth space and the code must "know" the next character is 'M' without getting() it.
Kernighan and Richie offer us a function getch() and ungetch() whereby the ungetch pushes back the last character into the input . The problem with this is that I believe is that the buffer is not the actual input buffer stream but rather a simulated character array which contains the input. I dont think itll be as efficient on a text file so large.
View 9 Replies
View Related
Jun 20, 2013
I'm challenged to write a code for the following:
write a text up to 1000 characters, and get it back. the end of the text is detected though EOF on a new line or reaching 1000 characters.(EOF=ctr-Z on a new line)
I mainly have problem how to bring the EOF work probably. it doesn't react when I press ctrl-z directly?
Code:
int i;
char Text[1000];
printf("write the text:
");
gets(Text);
for(i=0;i<=1000;i++){
[Code] .....
View 3 Replies
View Related
May 19, 2013
How to write a simple script to convert F to C. That was easy enough once I read about how C treats the math of 5/9 being less then 1 thus converts to 0. Fixed that issue and the code works great.
I find it a useful tool and would like to, way outside of the scope of the homework mind you, figure out a way to get the script to restart if a [Yy] answer is provided at the end of the script. All other responses result in return(0).
I only have limited knowledge in BASH scripting. In BASH i would have just placed the int main(void) {foo} into a single function then created a simple if/then test after the function is called.
Reading up on functions in C, they do not work in the same way I would like to treat them from BASH. understandable this is not BASH.
then i started looking into do/while loops. On an other forum someone pointed out the possibility of using fgets as part of the challenge response. Now when I try to compile the code im getting an odd result. for some reason the compiler seems to think that my character string(or is it an array) is an integer...
Code:
/* 5. Write a program to convert a temperature in degrees Fahrenheit to degrees Celsius. *///##########################################################
// Created by Raymond L. Brunkow
//
// This program is free software; you can redistribute it and/or modify
// it under the terms of the GNU General Public License as published by
// the Free Software Foundation, either version 2 or version 3 of the
// license, at your option.
//
[Code] ....
//above is were the homework ends, below is what im trying to do now.
/* Prompt for new input */
printf("
Would you like to enter a new temperature [Y]es or [N]o? ");
fgets( BUFFER, sizeof(BUFFER), stdin );
}
while ( sscanf( BUFFER, "%1s%*1s", ANS ) != 1 || strchr( "YyNn", *ANS ) == NULL );
return(0);
}
This results in the following error:
Code:
$ gcc -o hw_1_5.v2 hw_1_5.v2.c
hw_1_5.v2.c: In function "main":
hw_1_5.v2.c:52:
warning: passing argument 1 of "fgets" makes pointer from integer without a cast There is no integer there to be passed.
View 10 Replies
View Related
Feb 21, 2013
How would I go about getting a loop to return to the start?
View 2 Replies
View Related
May 5, 2014
I have to code a simple program who determining the number of Characters (A character could be any alphabets, digits, punctuation marks, or special , Operators ( Operators are those symbols that are used in mathematica expression, such as,'+', '*', '/', '-', and so on.), Uppercase letters (Uppercase characters are those from A..Z) and Numerical digits ( A digit is any of the Hindu-Arabic numerals from 0..9). Why the output is wrong!
#include <iostream>
#include <string>
#include <fstream>
#include <cstdlib>
#include <iomanip>
using namespace std ;
int main() {
char text;
[Code] .....
This is my input file This is a possible factorial function in a programming language called LISP
(defun factorial (n)
(if (< n 2)
1
(* n (factorial (1- n)))))
This is my output:
The number of characters = 113
The number of operators = 3
The number of numerical digits = 3
Uppercase letters = 5
I think that "characters" is wrong, but I do not know why !
View 4 Replies
View Related
Mar 11, 2013
how to put 2 letters together and make them to count as 1?
provided that they must consecutive
for example:
p : count as 0
pxp : count as 0
pp : count as 1
xpxp: count as 0
ppxpp : count as 2
View 1 Replies
View Related
Nov 3, 2014
How make function which gives back two numerical values. I think needs using structure. now i try found my c book.
View 3 Replies
View Related
Mar 9, 2014
I am supposed to make a scrabble game and randomize 10 of the letters.
Here's my code:
class Spinner
Spinner::Spinner(string things[], int numThings[], int n)
{
currentPosition = 0;
[Code].....
View 2 Replies
View Related
Mar 19, 2013
I have started making a text adventure game.
if (Choice == 2) {
cout << "" << endl << "You follow the light to the end of the hallway, you find your self in a room" << endl
<< "with natural light coming from a hole in the ceiling." << endl << "" << endl << "You hear the door you just came through, slam behind you!" << endl << "" << endl
<< "There are three possible directions." << endl << "" << endl << "Do you:" << endl << "" << endl << "1) Go forward" << endl << "" << endl << "2) Go left" << endl
[Code] .....
Ignore the if (Choice == 2) at the beginning, that's linked to some previous code.
I want to make the player go back to the first bit of text but i'm not sure how to do this if they keep choosing to go back and forth from one location.
I first thought of doing it by just putting the text back in after they have chosen the option, but I can't do this infinite times.
View 5 Replies
View Related
Oct 11, 2014
I am writing another program and I cannot find for the life of me how to loop the program back to the start of a function.
Code:
#include <stdio.h>
#include <stdlib.h>
int main(void) {
int choice;
char band1, band2, band3, band4;
printf ("This program calculates the resistor value based on the colours of the wire.
(enter the integer near the command)
");
printf ("What would you like to do?
[Code].....
This is my current iteration of the program. Obviously, I haven't finished writing the case 1 of the first switch, but for the other ones. I thought that return main would cause the program to loop back to the beginning after executing the case, but I see that it is not the case (pun not intended). Anyways, what would I have to insert to cause the program to loop again (other than for case 3)? And another question, why is it that in scanf in the first case, the program only accepts two characters before finishing?
View 4 Replies
View Related
Mar 4, 2014
I was asked by my teacher to create while loop for this, iv have completely for gotten how and all the tutorial that i have found show basic lopping.
#include <iostream>
#include <iomanip>
using namespace std;
void checkAnswers(char[], char[], int, int);
int main(int argc, const char * argv[]) {
int choice = 0;
const int num_question=20;
const int min_correct=15;
char answers[num_question] ={
[Code] ....
View 5 Replies
View Related
Apr 24, 2012
If I have a positive double and cast it to an int. If it overflows, I know that most of the time, the value of the int becomes negative. If it overflows far enough, will it eventually become positive again?
Code:
double d = 34192384732194872394837249832743984738.;
int i = (int)d;
std::cout << i << std::endl;
Is there any value of d > INT_MAX that will cause i to be positive?
View 4 Replies
View Related
Jan 25, 2014
I have my program working, as far as converting the letters to numbers, but i want be able to enter as many numbers as i want. so i figured i could put into a loop asking a question at the end. question being whether the user wants to enter another number or not. also i'm assuming the user enters exactly 7 letters each time. this is my code so far.
const int arSize = 9;
char letters[arSize];
int numbers[arSize];
int count = 0;
cout << "Enter a telephone number expressed in letters. (e.g. CALL loan ( it is not case sensetive))";
for (int i = 0; i < 7; i++,count++)
[Code] .....
View 14 Replies
View Related
Feb 5, 2015
So I'm making my first program w/ C++ and its a game guessing game. I've learned how to use booleans, chars, strings, if/else, loops, and input. Anything past that I dont know. I've gotten my game to work properly except for the fact that when you guess incorrectly, the program closes. I want the program to go to the beginning of the program again so the user can restart. So far i've gotten the loop to beginning thing to work but not well. It'll only repeat twice before closing again and it'll say the user got the wrong answer even if it was correct. Here's my code
#include <iostream>
#include <string>
#include <random>
#include<ctime>
using namespace std;
int game(){
string playerName;
int guess;
[Code] ....
View 1 Replies
View Related
Mar 30, 2014
I know that returning to main() is not a good idea but how will I loop the program to go back to the position selection when the voter is done voting for the last position.
when I run the program it seems fine. getting the votes from President to PRO Position is fine. The problem is how will the next voter vote without losing the vote (tally) of the previous voter?
FLOW:
SELECT POSITION (a-e) ---> SELECT A CANDIDATE (a-c) ---> (this goes on until the position of PRO) ---> ( then go back to the POSITION SELECTION)
After every vote there is a case statement for which I can choose to vote for the next position, quit, or show results (and after showing the results it will go to the next position to vote)....
#include<iostream>
#include<string>
#include <conio.h>
using namespace std;
int pca=0,pcb=0,pcc=0,ptv=0;
[Code] .....
View 1 Replies
View Related
Jul 28, 2013
I'm trying to put an if-else statement in a do-while loop and when I put the correct answer in the if statement I get that error. Here's the program:
#include <iostream>
using namespace std;
int main() {
int answer;
char repeat;
[Code] .....
View 5 Replies
View Related
May 1, 2015
#include<iostream>
#include<conio.h>
using namespace std;
int main(void){
clrscr();
[Code] ....
I am trying to print ascii characters but problem is If i put a limit in for loop to 255 or more than 126 the output don't stop it keeps on going
I know there is another way to this program but what i want to know this why this happen in this logic....it doesn't happen if a<=125 or less then 125.
View 7 Replies
View Related
Nov 20, 2014
I'm trying to write a program for a lab, I know how easy it is but cant see to crack it.
I need to make a program using while or for loop.
I must have the user type a number, for an input value an output value but then do it again several times but without it going on forever asking again and again.
View 4 Replies
View Related
Aug 29, 2014
How to make a loop so program never end, it end only by typing "EXIT"
View 1 Replies
View Related
Oct 28, 2014
So I have been assigned a program that counts keystrokes, alphabetical characters, and vowels. I have the program working as desired but I just can't figure out how to make it end upon ONLY the "return" key being pressed.
Code:
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
int main ( void ) {
[Code] .....
View 7 Replies
View Related
Dec 9, 2014
I'm trying to optimize this code using openMP. The line I added made it run about twice as fast but I'm trying to figure out how to make it even faster. Could reshaping the loops potentially increase the speed?
//4 threads
int listsize=15000;
#pragma omp parallel for shared(f) private(i,j,hash)
for(i = 0; i < listsize; i++) {
printf("Thread: %d i: %zu wl_size: %zu
",omp_get_thread_num(),i,wl_size);
for (j = 0; j < num; j++) {
h = f[j] (getw(list, i));
c[h] = 1;
} }
View 2 Replies
View Related
Oct 26, 2013
I need to do make a loop inside a condition. Can it be done? I don't want to call another function to do it. Any way at all without calling separate function inside the if? I just want to do:
if (
for (int i = 0; i<=10; i++)
{
//stuff related to the for loop
} )
{
//stuff related to the initial if condition
};
View 7 Replies
View Related
Apr 18, 2013
I'm attempting to make a cache simulator in C++. But I need to access individual bits in an integer to figure out where in my "cache" the writing actually gets done. I'm pretty new to bit shifting. Say I'm trying to access the the bits of the int 5, which are its "address". I'm simulating a direct mapped cache. I need to find its tag, the set it goes into, and which line. How do I use bit shifting to access the bits to acquire the tag, the index bits, offset bits, block number...all these pieces in order to actually find where I store it in the cache.
View 6 Replies
View Related