write a program as described below: program that reads in two integers (age, social security number). You should write functions that throw an out-of-range exception forage (no negative numbers)SSN (must be a 9-digit integer) My code is written below:
#include "std_lib_facilities_4.h" int main(){ int age = 0; int ssn = 0;
It is advisable not to throw the exception from destructor. Because if exception happens stack unwinding happens. suppose the destructor again throws the exception then on part of first exception again one exception is thrown and exceptions can not be handled at same time. This is what i read from stack over flow.
I have a date class and i overloaded operator >> to accept input in dd/mm/yyyy format. if i enter the wrong date format my program will crash. How do i do exception handling for this? How should i do the try part? and for catch, I'll just catch a date class variable?
Code: void operator >> (istream &is, clsDate &date) { string inputDate; is >> inputDate; int mm = stringToNumber(inputDate.substr(3,2)); // read 2 characters from character number 3 start int dd = stringToNumber(inputDate.substr(0,2)); // read 2 characters from character number 0 start int yy = stringToNumber(inputDate.substr(6,4)); // read 4 characters from character number 6 start
writing a program that requires exception handling. if an error occurs, i what the program to go back to the begging of the loop. i tried using break but that just makes the program crash when it receives a bad input. how do i do this? this is what i have so far (this part of the program any ways)
while (! quit) { // Output phone book menu cout << endl
I'm having some significant trouble with an assignment to create a postfix calculator that simulates the dc calculator function in linux. I have attached the handout with project instructions, but my main problem at the moment lies with parsing through the string input and adding the numbers into a stack of ints.
Project #2.pdf (47.78K)
Here's a brief summary of the methods used in the switch statement:
OPERATORS AND COMMMAND INPUTS + : Pops two values off the stack, adds them, and pushes the result. - : Pops two values, subtracts the first one popped from the second one popped, and pushes the result. * : Pops two values, multiplies them, and pushes the result. / : Pops two values, divides the second one popped from the first one popped, and pushes the result. % : Pops two values, computes the remainder of the division that the / command would do, and pushes that.
Commands
p - Prints the value on the top of the stack, without altering the stack. A newline is printed after the value.
f - Prints the entire contents of the stack without altering anything. A newline is printed after each value
n - Prints the value on the top of the stack, pops it off, and does not print a newline after.
c - Clears the stack, rendering it empty.
d - Duplicates the value on the top of the stack, pushing another copy of it. Thus "4d*p" computes 4 squared and prints it.
r - Reverses the order of (swaps) the top two values on the stack.
Exception handling also needs to be added to account for division by zero and and invalid operator.
Right now my biggest problem is that I keep getting the following strange output where a 0 is automatically added to the stack when I call a function or operator. I realize this is probably because of the lines I have placed outside of the for loop that read
//END FOR LOOP int num = atoi(operands.c_str()); myStack.push(num); operands = ""; cout << num << " added." << endl;
But when I tried putting these statements INSIDE the for loop, I just get more errors. I've been working on this for a number of hours but I can't figure out my issue. I've also attached an image of my current output.
My MDI Project(VC++2010 Professional) is unable to catch errors ,though I return ,try catch block. So I developed simple dialog based application .Placed one button on Dialog and on its click written following code
Collapse | Copy Code void CMFCExecDlg::OnBnClickedButton1() { try { int j = 0; int i = 10/j; } catch(CException * e) { MessageBox(_T("Hello"),_T(""),MB_OK); } }
But still program control does not come in catch block it simply gives error. I tried all child classes of CException but no use.I think there will be some setting in Visual Studio. How to handle exceptions
How to incorporate exception handling code into my existing calcMortgage code. While I was researching exception handling, I thought "what would happen with my current code if someone input the principal with a comma in it?". Typically people write two hundred thousand like so.... 200,000. While experimenting with my original code, I remembered reading in my research that someone had done their calcMortgage with the output prompt "DO NOT USE COMMAS". So, when checking to see if my code would run, I did not use commas.
Well, guess what...using a comma in the principal causes an error with a negative numerical output. lol PERFECT!!!! Obviously, the easy thing to do would be to put output instructions in the code telling the user NOT to use commas, but the assignment requires me to use exception handling. The code itself works, but the calculation produces a negative monthly payment.
How would I insert exception handling code into my current code to correct this problem??
#include <iostream> #include <cstdlib> #include <cmath> using namespace std; struct calcMortgage { double Principal, numYears, IntRate, monthlyPayments;}; int main(){
My code has been acting odd. I made a function that layers my art resources but only the last tile of my art resource acts the way it should. My character goes behind and in front of the last tile and gets printed correctly. Strangely its really exclusive to the last tiles I print. What I need is to figure out in step by step order what going on with my code sample below and be able to layer the resources.
Here is a small sample of my main function. This is how I do my rendering.
Code: Int main (int arc, char* args[]) { //Move class Move character; //Class Tile & Side Tile Tile *tiles [TOTAL_TILES];
Now the recursion will generate a large recursion tree, like if n=5, 5 will call (5-1), (5-2) or 4,3 . What I want to know is, will fibo(n-1) will be called 1st go all the way to the base case 1, then do the summation or fibo(n-2) will be called right after fibo(n-1) ?
Okay so I am programming an 8051 variant to interact with an SD card. In a separate initialization routine in SD_CARD.c I pull out the vital information of the card into global variables. I then call Menu() which is in another source file but includes a header file with all of the variables declared as extern. Now here is the weird, part this is from my Menu.c
Now the output of the first printf is 16384 but the conditional evaluates to false. If I put this code in SD_CARD.c (Where VOLUME_1_SECTOR is defined) the conditional evaluates to true. I am confused why the printf works correctly in Menu.c but not the conditional.
Assignment: Take an integer keyed in from the terminal and extract and display each digit of the integer in English. Ex. 932 --> nine three two
Code:
/*This program takes an integer keyed in from the terminal and extracts and displays each digit of the integer in English.*/ #include<stdio.h> int main(void) { //DECLARE VARIABLES int num; }
[code]....
I don't know how the program works if the integer is more than one digit.
I have a question about a dynamically loaded library I am using. I have called it SqlWrite, it is for connecting and writing to a Microsoft SQL server DB. I have a function in it that is defined as:
#ifdef WIN32//C:UsersaDocumentsVisual Studio 2012ProjectsGetPageSourceDebugGetPageSource.dll #pragma message("WIN32 is defined") #ifdef _DEBUG SetErrorMode(0);
[Code] ....
As you can see, inside the prototyped function "SqlExecSP", I cout (or, rather, wcout for wide characters) the sql statement i am running, and the return code of the sql statement. a sql return code of "0" is equivalent to "SQL_SUCCESS". Then, I cout " got player again " after executon of SqlExecSP alias SqlExecS.
This usually works, and gives me following sample output:
exec SELECT [PlayerID], [FirstName], [LastName], [TeamID] FROM [soccer].[dbo].[Players] WHERE LastName = 'Abdellaoue' AND FirstName = 'Mohammed' retcode 0
RETURNING FROM EXECSP NOW!!! got player again
However, sometimes, the program crashes somewhere between outputting "RETURNING FROM EXECSP NOW!!!" and outputting " got player again ", i.e. the output is then:
exec SELECT [PlayerID], [FirstName], [LastName], [TeamID] FROM [soccer].[dbo].[Players] WHERE LastName = 'Abdellaoue' AND FirstName = 'Mohammed' retcode 0
RETURNING FROM EXECSP NOW!!!
As you can see, it doesn't output the next line " got player again ", because it somehow crashes in between.
However,t he only line that should be executed between this, as far as I can understand, is the actual return of the DLL function SqlExecS, prototyped as SqlExecSP in my calling code, i.e. the only line that should be executed in between is:
return RetCode;
However, somehow, this fails, even though RetCode is "0", as I can see at the end of the output
exec SELECT [PlayerID], [FirstName], [LastName], [TeamID] FROM [soccer].[dbo].[Players] WHERE LastName = 'Abdellaoue' AND FirstName = 'Mohammed' retcode 0
Now, why sometimes this crashes, and sometimes this works. I.e, I can sometimes call this function x times, and it doesnt fail, outputting " got player again " right after the calls, and sometimes, it fails somewhere in between, at call x, y, or z, i.e. sometimes i can execute it ten times successfully and sometimes i can't, even though the return code is still 0, and it just fails somewhere in between. I am not sure if it has to do with the call being a call to a dynamically loaded DLL function, but I can't see where else the error is.
Why this can be failing, and at different, seemingly random times?
i've got an assigment that requires me to overload some operators and add some objects together.
I will show the code and explain as good as I can.
void SArray::operator+= (const SArray &obj) { Sphere * tmp_arr; tmp_arr = new Sphere[obj.antalobjekt+this->antalobjekt]; //antalobjekt = //Gets amount of elements in the arrays.
[Code]......
m_arr is the inner array for storing elements, do ask if something is not clear enough. The copy constructor works, so i have not included it.
My program works primarily by receiving user input however; using 'char' and 'fgets' i have to stipulate how many characters i want assigned, and this isn't practical for what I am after. Example below.
Code:
char example[50]; printf("What colour is the sky? "); fgets(example, 50, stdin); Is it possible that the assigned number (in this case '50') is determined strictly by the user input?
for example, user input is Blue then 50 is then 5?
I am trying to create a multiple choice quiz so I can learn the menu at my new job, while doing a side project but I am having a warning when outputting. Speaking of side projects, is this a kind of side project people are looking for on a resume?
i want to write an array sorting program that works with recursive function.but i can not do it.
my algorithm
Recursive find the min value find the min value and save it find the min value and save it and remove it from loop put the rest in loop again find the min value again .. ...
i didnt write the function because i dont know how will it work
Code:
#include<stdio.h> #include<stdlib.h> #define s 5 void main() { int a[s]={25,3,2,4,1},c[s]; // c[s] for new sorting int i,ek,j; //ek = min