C++ :: Number Printing On Screen Using Only One Variable
Jan 9, 2015
how to make a program in which a user is prompted to input four numbers like 1234 and then print those four numbers one by one on screen using only one variable..??
For example:
1
2
3
4
in ascending order...
I've done that with two methods but i am not sure whether the methods were correct..
Program that has the user enter 5 digits then asks the user what they want to know about the 5 digits. My issue is when the program goes to print the value, its a totally ill related number
10 34 8 17 50
program prints out:
2 for smallest 79 for largest 119 for sum 23.80 for average
I'm taking a C++ computer science course right now, and one of the questions on my latest assignment is this:
"A partition of an integer n is a way of writing n as a sum of positive integers. For example, for n=7, a partition is 1+1+5. Write a program that finds all the partitions of an integer n using r integers. For example, all the partitions of n=7 using r=3 integers are 1+1+5, 1+2+4, 1+3+3, 2+2+3."
I've been struggling with this problem for a couple days now, and how to do it. I understand I need a recursive function to grab variables, and probably an array or vector to store them, but where to begin.
I've been reading documents on partition generating and the concept still eludes me, and any other questions on here or other programming sites using partitions don't seem to have a constraint on them.
I have a linear buffer coordinate, i am to print onto a screen coordinate.
Say maxy = 20, maxx = 10, bufferx = 20, y, x, Buffer coordinates to screen coordinates: Algorithm: So for each maxx'th of bufferx, y will +1 and x will reset. Mathematical: y = int bufferx / maxx, const double averageIncr = int (maxx+1/maxx) - double (maxx+1/maxx); So the amount of averageIncr in (int bufferx / maxx - float bufferx / maxx) is the screen x coordinate. Then (int bufferx / maxx - float bufferx / maxx) / averageIncr = x
Screen coordinates to buffer coordinates: bufferx, y = 21, x = 10, maxy = 20, maxx = 10,
y * x would be the case if bufferx <= max screen coordinate. There is no max bufferx.
How to find the transition from screen coordinates to buffer coordinates? Also, if the algorithm within a for loop, or that the mathematical way would be slower or not? I rarely touch floating point stuff.
I'm trying to write a program which prints a table of ASCII chars, I'm not really done with my thoughts on it but I already ran into the following error:
Error: cannot initialize a variable of type 'char' with an rvalue of type 'char (*)[16]'
Here's my code so far:
# include <iostream> using namespace std; int main() { char asciiTable = new char[8][16]; int nextSign = 0;
fstream infile1(argv[1]); if(!infile1.is_open()) cout << "Could not open file"; else { char listNum; while(infile1.get(listNum)) cout << listNum; }
However, when I check for odd or even numbers it will check each and every number.
printed like this (partial list): 1 is odd 3 is odd 8 is even 9 is odd
But it should print: 138 is even 9 is odd
I tried using getline, but it keeps giving me the errors: invalid conversion from 'void*' to 'char**' invalid conversion from 'char' to 'size_t*' too few arguments to function 'ssize_t getline(char**, size_t*, FILE*)'
Here is the getline code, what am I doing wrong? I have tried switching things around, adding things. Just nothing works.
ifstream infile1(argv[1]); if(!infile1.is_open()) cout << "Could not open file"; else { char listNum; getline(infile1, listNum); cout << listNum; }
So I have a template, part of a larger code, that is designed to calculate the number of multiplications it took to reach a certain number. The problem is, whenever I execute the program, mults is always printing out a strange number, perhaps its actual address.
template <class T> T power3(T x, unsigned int n, unsigned int& mults) { if (n == 0) return 1; if (n == 1) return x; if (n == 2){
Basically this is what i need to do. Write a program that reads a number from the keyboard, separates it into its individual digits and prints the digits to screen, each on its own line followed by the same number of stars as itself.
For example, if the number is 2339 the program should print
9 ********* 3 *** 3 *** 2 **
So far i have managed to separate the number and have them on different lines, but how to implement the stars onto each line with the number!
My code so far:
int main() { int n; printf("number? "); scanf("%d", &n); while (n > 0) { printf(" %d
The program requires the user to enter 10 integers then print the total no. of even integer,highest even integer, lowest even integer then total no. of odd integer,highest odd integer, lowest odd integer
I already got the total no. of even integer and total no. of odd integer. But I don't know how will i get the highest even integer, lowest even integer and highest odd integer, lowest odd integer.
I write this program to print the number of days for the month when the year and the month enters. This is not giving any result and i think that problem is with calling functions.
#include<iostream> #include<conio.h> #include<string> using namespace std; int leap_year(int year); string days(string mounth); string feb(string fab1); void main(){ int year;
I want to have one case of my switch statement to print out how many times the user has chosen other cases in the switch statement. Such as "You have pressed 2 6 times and 4 3 times."
In C how can I initialize a variable that is not a letter or number? For example with a number I can :
Code:
int i = 5; for ( i = 0; i <=5; i++ ); printf( "%d", i ) This would display a row of 5's
but what if I wanted to display a row of -----? What I am trying to do is read in a simple txt file, around the file I want ----1----2-----3 ect ect on the top ----a----b-----c down the side Then I want to be able to change the file at lets say position c2 and save it. This is the early stages of my attempt to set up a editable table.
Write a function write with variable number of arguments that takes a string first argument followed by any number of arguments of type double and prints on the screen a string formatted by the rules described below. The first argument may contain formats in curly braces of the form {index[:specifier]}, where the square brackets show optional parts (this is :specifier may be missing), and index is the sequence number of an argument of type double (starting from sequence number 0).
Rules for formatting: In the printed string the curly brackets and their content will be replaced by the argument with the given index, formatted according to the given format specifier. If the format specifier is missing, the argument will be printed with its default format. For example:
write("The number {0} is greater than {1}.", 5, -3); will print The number 5 is greater than -3.
write("There are no format specifiers here."); will print There are no format specifiers here.
The format specifiers and their meanings are listed in the following table
Specifier MeaningFormat Output for 1.62 Output for 2.0 none default {0}1.62 2 ccurrency{0:c}$1.62 $2.00 escientific{0:e}1.620000e+000 2.000000e+000 ffixed point{0:f}1.620000 2.000000 iround to int{0:i}2 2
Limitations: You may limit the maximum number of arguments your function can process to a certain value, for example 10.
Suggested extensions: -Add an optional alignment specification in the format , e.g., make the format of the form {index[,alignment][:specifier]}, where alignment is an integer specifying the width of the field in which the corresponding argument will be printed. If alignment is positive, align to the right, if it is negative, align to the left. -Accept an optional integer after the specifier letter, specifying the required precision in the output. For example, {0:f2} will print the number 1.6234 as 1.62, but {0:f5} will print it as 1.62340.
Im having trouble on getting the quantity up of the variable "item.iqty". For example the current quantity is 5 and in this function, the user inputs a number and it should add to the variable "item.iqty". So if if the user inputs 2 then the current quantity should be 7 now but in my program it hasnt changed. its still 5
I'm a basic C++ programmer, and I am stuck on this problem. You work for a company that collects a set of numbers. The numbers are located in a data file named "./Data_File". The data file contains two columns. how do you count a certain number on the left column.
I am writing a math program, using variables of type double, and had initialized all variables to 0.0.
I now realize that not all results will be valid.
Is there a way to explicitly assign a variable of type double a non-numeric value, for example, "NaN", "Undefined", or "Unassigned" or something like that?
That way, when I read through the printout of results, I will realize the "NaN" results indicate a valid solution was not found. Whereas a 0.0 might not stand out.
I'd hate to have to go back and delete the initialization, and then re-assign 998 values just for the sake of 2 non-solutions.
I have a simple problem about memory allocation.In the function Nr_elements() i assign a value which represent the elements of array. The pointer p is initialised with the address of variable n, but when i compile i dont know why but dont work. This function return a pointer.
Code: #include<stdio.h> #include<stdlib.h> int *Nr_elements(); int *allocate(int); void deallocate(int *); [code]....
I am forking 3 times in a loop like this but the variable "count" does not increment, it stays on '1' and therefore this is an infinite loop, and this simple thing dont make sense to me.
I have checked so that the pointer address is the correct one every loop.
Code: void increase(int* x) { *x += 1; } main() { int pid, i, number = 0;
I need to create dynamic string by given format(%d,%s,%f,%lf,%c) using variable number of arguments in function. This code gives me an error(main.exe has stopped working):