C/C++ :: Program To Find Index Of Character In A String Gives Incorrect Output
Oct 28, 2014
I've been typed out a C program to let the user define the size of their string , and key in characters for this string , the program would then prompt the user for a character to search for in the string and return it's index value. Eg. Index of c in abc is 2. My code is as shown:
#include<stdio.h>
#define SIZE 20
int search(char x[SIZE+1] , int n , char s);
int main(void){
char x[SIZE+1] , s;
int n , index;
[Code] ....
However , after I key in my characters for the string , the program does not prompt me to input a character to look for, it just prints it out and returns some funny number. But the program works just fine is I move this portion to the top :
printf("Enter alphabet to find: ");
scanf("%c",&s);
This program has to convert an unsigned binary number into a decimal number. No matter what binary number I enter, however, it always outputs that the decimal number is 0.
My code is as follows:
#include <iostream> #include <cmath> #include <algorithm> using namespace std; int main() { string binarynumber; cout << "Enter an unsigned binary number up to 32 bits." << endl;
[Code] ....
And my output:
Enter an unsigned binary number up to 32 bits. 00001111 That number in decimal is 0
The output should have shown the binary number in decimal to be 15, and I cannot find my error.
I try to find charecter position but evey time i run my program it give me 0 position why ? Why in my getChar function give me warning statement with no effect i can not understand this warning where is my mistake.
Code: void getChar(const char* str){ int lenStr = strlen(str); int i = 0; int posCharecter = 0; printf(" %s has %d charecters length ",str,lenStr);
Here is my code to find the index of a string array whose string is equal to the query string. I have checked the program can return the correct index, but the cout result is totally wrong.
#include <iostream> #include <string> using namespace std;
I am writing a program where I read in data from a file into an array and a 2D array. However, when I cout that data to insure that it was all read in correctly, I get only the first full line of that input file(where there are actually 25 rows and 12 columns).
What am I doing wrong or should be doing differently?
ifstream fin; //open the input file fin.open("store_data.txt"); //If input file was opened, read input file data into array and 2d array if(fin){
Were are to implement a method countValue() that counts the number of times an item occurs in a linked list. Remember to use the STL <list>
int countValue(list<int> front ,const int item);
Generate 20 random numbers in the range of 0 to 4, and insert each number in the linked list. Output the list by using a method which you would call writeLinkedList which you would add to the ListP.cpp.
In a loop, call the method countValue() , and display the number of occurrences of each value from 0 to 4 in the list.
Remember that all the above is to be included in the file ListP.ccp
My loop is outputting data incorrectly. I have inbound web data that come in sets of 7. I am trying to in insert the 7 records into a vector and then display the vector content followed by a new line.
I've implemented the merge sort algorithm and used the 'merge' part for counting the number of split-inversions in an array as part of an assignment for an online course. How ever, the out put array is not a sorted version of the input array and as a result the number of split inversions obtained is wrong. I think that there is some thing wrong in the way I am indexing arrays.
I've used ' cout ' to print the values of indexes to see exactly what values are being passed in during the recursions.
Code:
#include <iostream> using namespace std; int length=0,mid=0,inv=0; void mergesort(int arr[], int first, int last) { cout << "first: " << first << " " << "last: " << last; cout << endl;
I need understanding the logic behind this function. The function is supposed to "Return a pointer to the character at the index given" . For example, what exactly are we declaring at "(char * const c, int index)"? where does "index" come from or equal to in the body of the function?
Code: 1 2 3 4 5 6 7 8
char * GetValueAtIndex(char * const c, int index) { int i = 0; char *p = c; while (i++ != index) p++; return p; }
I am new in c++ and I am having difficulties with finding values in two vectors. Basically, I have two constant integer vectors u and v . They have the same length. I would like to select all the values in u and v, that respect those statements:
im using a for loop to find the index values of the tied high scores and store them into string list then reference list in the second for loop to output it to screen however it isnt letting me use an array with index i as an index its self.
void printHighest(Student s[], int length){ int index; string list[10];//you're never going to have more than 10 people with a tieing highscore. index = findMax(s, length);
[Code] ....
For the time being I simply removed the idea of string list and just put the contents of the second for loop into the if statement above it. However, I am still curious as to if I can reference an index of an array in an index of another array.
Create a program that adds, subtracts, multiplies, or divides two integers. The program will need to get a letter (A for addition, S for subtractions, M for multiplication, or D for division) and two integers from the user. If the user enters an invalid letter, the program should display an appropriate error message before the program ends. If the letter is A (or a), the program should calculate and display the sum of both integers. If the letter is S (or s), the program should display the difference between both integers. When calculating the difference, always subtract the smaller number from the larger one. If the letter is M (or m), the program should display the product of both integers. If the letter is D (or d), the program should divide both integers, always dividing the larger number by the smaller one."
And here is the test data. I am posting the results from my desk-check table.
operation first integer second integer answer A 10 20 30 a 45 15 60 S 65 50 15 s 7 13 6 G -1 M 10 20 200 d 45 15 3 d 50 100 2
Then, I transferred my program into a source file. Here it is:
//Exercise16.cpp - display answer of two integers
#include <iostream> using namespace std; int main() { //declare variables int firstInteger = 0;
[Code] ....
After putting in the data, everything worked fine, except the last two operations, which are M (multiplication) and D (division). All the answers for the last two operations essentially give me a 0.
So I'm trying to create a function that replaces any instance of a character in a string with another. So first I tried the replace() string member function:
#include "NewString.h" using namespace ...; int main()
[Code].....
Instead of replacing the the l's with y's it outputted a long string of y's. Also, NewString is derived from the string class (it's for the assignment). the header and whole implementation file, already tested.
I've also tried, instead, to use a for loop in ReplaceChar() but I need to overload the == operator and I don't know how I should exactly:
I want the == operator to test if the value in the char array is equal to target but I'm not sure how to pass in the position. I'm guessing the this pointer in ReplaceChar() is not the same as the one dereferenced in ==() because target is never replaced by entry in the string.
I'm trying to make a function that lets me pass an index and a string and will insert the string at that index in the linkedlist... here is so function i have so far:
I have been learning c++ for about 1 month. So my problem is that suppose i have array[6]={10,-1,3,54,2,12}
I want to fill new array with {1,4,2,0,5,3}
because -1 is the lowest and its index is 1 2 is the lowest and its index is 4 3 is the lowest and its index is 2 10 is the lowest and its index is 0 12is the lowest and its index is 5 54 is the lowest and its index is 3
I want to sort from lowest to highest but using the index value. Here is what i have but the output i get is {1,4,2,4,5,5} 1,4,2 is right but then its wrong.
#include <iostream> using namespace std; void swap(int& v1, int& v2); int main() { const int size = 6; int arry[6]={10,-1,3,54,2,12}; int sortedArry[6];
I'm new in programming, and trying to write a code in C. The requirement is following - to write a text, and to find frequency of 1 chosen character in it. The main thing is that program should check user input (for example, I want to check if user entered "char" --> then correct, or if entered "int" --> not correct). But the program still doesn't check. So I have:
Code: #include <stdio.h> int main(){ char c[1000], ch; char i, count=0; printf("Enter a text: "); gets(c);
I have code that creates an index file created from a data file of records.
#include <iostream> #include <fstream> #include <map> #include <sstream> #include <string> #include <iomanip> using namespace std; class Record {
[Code]...
I now need to write a second program that allows the user to enter a command on the Linux command line such as
search 12382 prog5.idx
and returns the information for the record with that key. The code I included for the index file is correct and works properly, but how to write the second program.
Here is the index file created by the first program: