Documentos de Académico
Documentos de Profesional
Documentos de Cultura
CHIMBORAZO
FACULTAD DE INFORMTICA Y ELECTRONICA
CARRERA DE TELECOMUNICACIONES
FUNDAMENTOS DE PROGRAMACION
CODIGO: 725
E-MAIL: sebastian.godoy@espoch.edu.ec
__
PERÍODO ACADÉMICO
JULIO - SEPTIEMBRE 2020
Evaluación del Segundo Parcial
Instrucciones:
Realice cada ejercicio en C++ utilizando las sentencias respectivas que le permita resolver controlar y repetir el
ejercicio las veces que el usuario lo requiera
Al terminar genere un documento en Word en el que copie no capture el código, posteriormente adjunte la
captura de la ejecución en donde se pueda observar el control de errores, si resuelve el examen en grupo adjunte
las actividades realizadas por cada integrante
Ejercicios:
1.- Simule un cajero automático con la clave a123 muestre un menú //depósito, retiro y saldo //
realice la operación en cada opción (recuerde que debe ingresar solo 3 veces la clave del cajero de
lo contrario debe salir del programa).
3.- ingrese un número de 3 cifras e indique el número intermedio para todos los casos posibles, por
Ejm: 794 el número intermedio es 9.
4.- realice un programa que muestre cuantos billetes (20, 10, 5 y 1) y monedas (50, 25 10 y 5
centavos) se deben entregar al recibir n centavos de dólar.
Especificaciones:
• Al inicio de la pantalla especifique de que se trata cada programa a ejecutar.
• Controle los errores en todo el programa, si la opción está fuera del rango o es incorrecta,
despliegue un mensaje de error y vuelva a pedir un nuevo valor.
• Repita cada menú o submenú, las veces que el usuario lo requiera.
• Limpie la pantalla, al ejecutar cada opción.
Puede usar system("cls"); con la librería stdlib.h, o clrscr(); con la librería conio.h
Al terminar suba al aula virtual.
Programa:
▪ Código en Google Drive
Link: https://drive.google.com/file/d/1ShNfKXmetMqJUdbc-qmWkRIp4SyiCytb/view?usp=sharing
94.
95. if((dep<0) || (dep-(int)dep>0))
96. {
97. system("cls");
cout<<"\n\n\n\t\tEl valor ingresado en monto no es valido\n\t\tIngrese los datos
nuevamente\n"; Sleep(2500); system("cls");
98. }
99. /*else if(len!=9)
100. {
101.
system("cls"); cout<<"\n\n\n\t\tEl numero de cuenta ingresado no es
valido\n\t\tIngrese los datos nuevamente\n"; Sleep(2500); system("cls");
102. }*/
103. }
104. }while((dep<0) || (dep-
(int)dep>0) ||continuar);
105. cout<<"\n\tEl deposito de
"<<dep<<" dolares al numero de cuenta "<<ncuenta<<" ha sido exitoso.\n";
106. break;
107. case 2://Retiro
108. system("cls");
109. do
110. {
111. continuar = false;
112. cin.clear();
113. if(cont > 0)
cin.ignore(1024, '\n');
114. cout<<"\n\tIngrese el
monto que desee retirar\n";
115. cout<<"\tMonto: ";
116. cin>>dol;
117. cont++;
118. if(cin.fail() &&
cin.rdstate())
119. {
120. system("cls");
cout<<"\n\tERROR: El valor ingresado no es un numero\n\tIngrese el valor de
nuevo"; Sleep(2300); system("cls");
121. continuar = true;
122. }
123. if(continuar==false)
124. {
125. if(dol<0)
126. {
127.
cout<<"\n\tError: Valor no permitido\n\tIngrese el monto nuevamente\n";
Sleep(2500); system("cls");
128. }
129. else
if(dol>money)
130. {
131.
cout<<"\n\tSaldo insuficiente\n\tIngrese el monto nuevamente\n"; Sleep(2500);
system("cls");
132. }
133. }
134. }while((dol<0) ||
(dol>money) || continuar);
135.
136. rest=money-dol;
cout<<"\n\tSe ha retirado "<<fixed<<setprecision(2)<<dol<<" dolares y tiene
disponible un saldo de "<<fixed<<setprecision(2)<<rest<<" dolares\n";
137. break;
138. case 3://Saldo
139. system("cls");
140. cout<<"\n\tTiene en su cuenta
un saldo disponible de: "<<money<<" dolares\n";
141. break;
142. case 4://Salir
143. system("cls");
144. cout<<"\n\tSaliendo...\n";
145. break;
146. default: system("cls");
cout<<"\n\tError: Opcion no existente\n";
147. break;
148. }
149. }
150. else{ intentos++; int_res--; cout<<"\n\n\n\t\t\t
ClAVE INCORRECTA\n\t\t\t INTENLO NUEVAMENTE\n"; Sleep(2000);
system("cls");}
151. if(intentos==3){ cout<<"\n\tLa Targeta ha
sido bloqueada\n"; }
152. else if(intentos==4){ cout<<"\n\tGracias por
usar este cajero automatico\n"; }
153. }
154. while (intentos<=2);
155. cout<<"\n ----------------------------------------------
";
156. cout<<"\n\tDesea ingresar reiniciar el
programa?\n\n\tSi=1\tNo=0\n\tOpción: ";
157. cin>>x;
158. if(x==1){ y=1; system("cls"); }
159. else if (x==0) { y=0; cout<<"\n\tGracias por usar el
programa"; }
160. else{ y=0; cout<<"\n\tError: Opcion
invalida\n\tCerrando el programa"; }
161. }
162. while(y==1);
163. break;
164. case 2: //calculadora cientifica
165. system("cls");
166. do
167. {
168. gotoxy(0,0); cout<<"//OPCION 2\n";
169. cout<<"\n\t\tCalculadora Cientifica\n\n";
170. cout<<"\tMenu principal\n\n";
171. cout<<"\tEscoja entre las siguientes ociones
diponibles:\n ";
172. cout<<"\t1. Suma\n\t2. Resta\n\t3.
Multiplicación\n\t4. Division\n\t5. Raiz cuadrada\n\t6. Elevar a la potencia\n\t7. Seno,
Coseno y Tangente\n";
173. cout<<"\n\tOpcion: ";
174. cin>>op3;
175. switch (op3)
176. {
177. case 1://suma
178. system("cls");
179. do //Para filtrar letras, etc
180. {
181. continuar = false;
182. cin.clear();
183. if(cont > 0)
cin.ignore(1024, '\n');
184. cout<<"\n\tHa escogido
suma\n\n\tIngrese los 2 valores que desee sumar\n\n\tValor 1: "; cin>>num1;
185. cout<<"\tValor 2: ";
cin>>num2;
186. cont++;
187. if(cin.fail() &&
cin.rdstate())
188. {
189. system("cls");
cout<<"\n\tERROR: Los valores ingresados no son numeros\n\tIngrese los valores de
nuevo"; Sleep(2300); system("cls");
190. continuar = true;
191. }
192. }while (continuar);
193. res=num1+num2;
194. cout<<"\n\tEl resultado de
la suma de "<< num1<<" mas "<<num2<<" es "<<fixed<<setprecision(2)<<res;
195. break;
196. case 2://resta
197. system("cls");
198. do //Para filtrar letras, etc
199. {
200. continuar = false;
201. cin.clear();
202. if(cont > 0)
cin.ignore(1024, '\n');
203. cout<<"\n\tHa escogido
resta\n\n\tIngrese los 2 valores que desee restar\n\n\tValor 1: "; cin>>num1;
204. cout<<"\tValor 2: ";
cin>>num2;
205. cont++;
206. if(cin.fail() &&
cin.rdstate())
207. {
208. system("cls");
cout<<"\n\tERROR: Los valores ingresados no son numeros\n\tIngrese los valores de
nuevo"; Sleep(2300); system("cls");
209. continuar = true;
210. }
211. }while (continuar);
212. res=num1-num2;
213. cout<<"\n\tEl resultado de
la resta de "<< num1<<" menos "<<num2<<" es "<<fixed<<setprecision(2)<<res;
214. break;
215. case 3://multiplicacion
216. system("cls");
217. do //Para filtrar letras, etc
218. {
219. continuar = false;
220. cin.clear();
221. if(cont > 0)
cin.ignore(1024, '\n');
222. cout<<"\n\tHa escogido
multiplicación\n\n\tIngrese los 2 valores que desee multiplicar\n\n\tValor 1: ";
cin>>num1;
223. cout<<"\tValor 2: ";
cin>>num2;
224. cont++;
225. if(cin.fail() &&
cin.rdstate())
226. {
227. system("cls");
cout<<"\n\tERROR: Los valores ingresados no son numeros\n\tIngrese los valores de
nuevo"; Sleep(2300); system("cls");
228. continuar = true;
229. }
230. }while (continuar);
231. res=num1*num2;
232. cout<<"\n\tEl resultado de
la multiplicación de "<< num1<<" por "<<num2<<" es
"<<fixed<<setprecision(2)<<res;
233. break;
234. case 4://division
235. system("cls");
236. do //Para filtrar letras, etc
237. {
238. continuar = false;
239. cin.clear();
240. if(cont > 0)
cin.ignore(1024, '\n');
241. cout<<"\n\tHa escogido
dividision\n\n\tIngrese los 2 valores que vaya a dividir\n\n\tValor 1: "; cin>>num1;
242. cout<<"\tValor 2: ";
cin>>num2;
243. cont++;
244. if(cin.fail() &&
cin.rdstate())
245. {
246. system("cls");
cout<<"\n\tERROR: Los valores ingresados no son numeros\n\tIngrese los valores de
nuevo"; Sleep(2300); system("cls");
247. continuar = true;
248. }
249. }while (continuar);
250. res=num1/num2;
251. cout<<"\n\tEl resultado de
la division de "<< num1<<" sobre "<<num2<<" es "<<fixed<<setprecision(2)<<res;
252. break;
253. case 5://raiz cuadrada
254. system("cls");
255. do //Para filtrar letras, etc
256. {
257. continuar = false;
258. cin.clear();
259. if(cont > 0)
cin.ignore(1024, '\n');
260. cout<<"\n\tHa escogido
raiz cuadrada\n\n\tIngrese el valor del cual quiere sacar la raiz cuadrada\n\n\tValor: ";
cin>>num1;
261. cont++;
262. if(cin.fail() &&
cin.rdstate())
263. {
264. system("cls");
cout<<"\n\tERROR: El valor ingresado no es un numero\n\tIngrese el valor de
nuevo"; Sleep(2300); system("cls");
265. continuar = true;
266. }
267. }while (continuar);
268.
269. raiz=sqrt(num1);
270. cout<<"\n\tEl resultado de
la raiz cuadrada de "<< num1<<" es "<<fixed<<setprecision(2)<<raiz;
271. break;
272. case 6://un numero a una potencia
273. system("cls");
274. do //Para filtrar letras, etc
275. {
276. continuar = false;
277. cin.clear();
278. if(cont > 0)
cin.ignore(1024, '\n');
279. cout<<"\n\tHa escogido
elevar u numero a una potencia\n\n\tIngrese el numero y la potencia a la que sera
elevado\n\n\tNumero: "; cin>>num1;
280. cout<<"\tPotencia:
"; cin>>num2;
281. if(cin.fail() &&
cin.rdstate())
282. {
283. system("cls");
cout<<"\n\tERROR: Los valores ingresados no son numeros\n\tIngrese los valores de
nuevo"; Sleep(2300); system("cls");
284. continuar = true;
285. }
286. }while (continuar);
287. pot=pow(num1,num2);
288. cout<<"\n\tEl resultado de
la potenciacion de "<< num1<<" elevado a la "<<num2<<" es
"<<fixed<<setprecision(2)<<pot;
289. break;
290. case 7://Seno, coseno y tangente
291. system("cls");
292. do //Para filtrar letras, etc
293. {
294. continuar = false;
295. cin.clear();
296. if(cont > 0)
cin.ignore(1024, '\n');
297. cout<<"\n\tHa escogido
encontrar el seno, coseno y tangente de un valor\n\n\tIngrese el valor:\n\n\tValor: ";
cin>>num1;
298. cont++;
299. if(cin.fail() &&
cin.rdstate())
300. {
301. system("cls");
cout<<"\n\tERROR: El valor ingresado no es un numero\n\tIngrese el valor de
nuevo"; Sleep(2300); system("cls");
302. continuar = true;
303. }
304. }while (continuar);
305. s=sin(num1);
306. co=cos(num1);
307. t=tan(num1);
308. cout<<"\n\tEl seno de "<<
num1<<" es "<<fixed<<setprecision(2)<<s;
309. cout<<"\n\tEl coseno de
"<< num1<<" es "<<fixed<<setprecision(2)<<co;
310. cout<<"\n\tEl tangente de
"<< num1<<" es "<<fixed<<setprecision(2)<<t;
311. break;
312. default: system("cls"); cout<<"\n\tError:
Opcion no valida\n";
313. break;
314. }
315. cout << "\n ---------------------------------------------
-";
316. cout << "\n\tDesea volver al menu de la
calculadora?\n\n\tSi=1\tNo=0\n\tOpción: ";
317. cin >> x;
318. if(x==1){ y=1; system("cls"); }
319. else if (x==0) { y=0; cout<<"\n\tCerrando Opcion
2: Calculadora Cientifica"; }
320. else{ cout<<"\n\tError: Opcion
invalida\n\tCerrando Opcion 2"; }
321. }
322. while(y==1);
323. break;
324. case 3: //numero de 3 cifras
325. system("cls");
326. do
327. {
328. do
329. {
330. continuar = false;
331. cin.clear();
332. if(cont > 0) cin.ignore(1024, '\n');
333. gotoxy(0,0); cout<<"//OPCION 3\n";
334. cout<<"\n\tIngrese un numero de 3 cifras";
335. cout<<"\n\tNumero: ";
336. cin>>cifra;
337. cont++;
338. if(cin.fail() && cin.rdstate())
339. {
340. system("cls"); cout<<"\n\tERROR: El
valor ingresado no es un numero\n\tIngrese el valor de nuevo"; Sleep(2300);
system("cls");
341. continuar = true;
342. }
343. if(continuar==false)
344. {
345. if(((int)cifra<=99) || ((int)cifra>=1000)
)
346. { system("cls"); cout<<"\n\n\n\t\tEl
valor ingresado no es valido\n\t\tIngrese el valor nuevamente\n"; Sleep(2500);
system("cls"); }
347. else if((cifra-(int)cifra>0))
348. { system("cls"); cout<<"\n\n\n\t\tEl
valor ingresado no es valido\n\t\tIngrese el valor nuevamente\n"; Sleep(2500);
system("cls"); }
349. }
350. }while((cifra<=99) || (cifra>=1000) || (cifra-
(int)cifra>0));
351. ci3=(int)cifra;
352. aux=ci3/100; ci3=ci3%100;
353. aux=ci3/10;
354. cout<<"\n\tEl numero intermedio de
"<<(int)cifra<<" es: "<<aux;
355. cout << "\n ---------------------------------------------
-";
356. cout << "\n\tDesea ingresar otro
valor?\n\n\tSi=1\tNo=0\n\tOpción: ";
357. cin >> x;
358. if(x==1){ y=1; system("cls"); }
359. else if (x==0) { system("cls"); y=0;
cout<<"\n\tCerrando Opcion 3: Numero intermedio"; }
360. else{ y=0; cout<<"\n\tError: Opcion
invalida\n\tCerrando Opcion 3"; }
361. }while(y==1);
362. break;
363. case 4://n monedas de un dolar
364. system("cls");
365. do
366. {
367. do
368. {
369. continuar = false;
370. cin.clear();
371. if(cont > 0) cin.ignore(1024, '\n');
372. gotoxy(0,0); cout<<"//OPCION 4\n";
373. cout<<"\n\tConversion de monedas\n";
374. cout<<"\n\tCentavos: ";
375. cin>>c;
376. cont++;
377. if(cin.fail() && cin.rdstate())
378. {
379. system("cls"); cout<<"\n\tERROR: El
valor ingresado no es un numero\n\tIngrese el valor de nuevo"; Sleep(2300);
system("cls");
380. continuar = true;
381. }
382. if(continuar==false)
383. {
384. if((c < 0) || (c - (int)c > 0))
385. { system("cls"); cout<<"\n\n\n\t\tEl
valor ingresado no es valido\n\t\tIngrese el valor nuevamente\n"; Sleep(2500);
system("cls"); }
386. }
387. }while((c < 0) || (c - (int)c > 0) || continuar);
388. cen=(int)c;
389. cencomp=(int)c;
390. dol20=cen/2000; cen=cen%2000;
391. dol10=cen/1000; cen=cen%1000;
392. dol5=cen/500; cen=cen%500;
393. dol1=cen/100; cen=cen%100;
394. cen50=cen/50; cen=cen%50;
395. cen25=cen/25; cen=cen%25;
396. cen10=cen/10; cen=cen%10;
397. cen5=cen/5; cen=cen%5;
398. cen1=cen/1;
399. cout<<"\n\tLos "<<cencomp<<" centavos
ingresados son: ";
400. cout<<"\n\tBilletes:";
401. if(dol20!=0){ cout<<"\n\t- "<<dol20<<" billetes de
20 dolares"; }
402. if(dol10!=0){ cout<<"\n\t- "<<dol10<<" billetes de
10 dolares"; }
403. if(dol5!=0){ cout<<"\n\t- "<<dol5<<" billetes de 5
dolares"; }
404. if(dol1!=0){ cout<<"\n\t- "<<dol1<<" billetes de 1
dolar\n"; }
405. cout<<"\n\tMonedas:";
406. if(cen50!=0){ cout<<"\n\t- "<<cen50<<" monedas
de 50 centavos"; }
407. if(cen25!=0){ cout<<"\n\t- "<<cen25<<" monedas
de 25 centavos"; }
408. if(cen10!=0){ cout<<"\n\t- "<<cen10<<" monedas
de 10 centavos"; }
409. if(cen5!=0){ cout<<"\n\t- "<<cen5<<" monedas de
5 centavos"; }
410. if(cen1!=0){ cout<<"\n\t- "<<cen1<<" monedas de
1 centavos"; }
411. cout << "\n ---------------------------------------------
-";
412. cout << "\n\tDesea ingresar otro
valor?\n\n\tSi=1\tNo=0\n\tOpción: ";
413. cin >> x;
414. if(x==1){ y=1; system("cls"); }
415. else if (x==0) { system("cls"); y=0;
cout<<"\n\tCerrando Opcion 4: Convercion de monedas"; }
416. else{ y=0; cout<<"\n\tError: Opcion
invalida\n\tCerrando Opcion 4"; }
417. }
418. while(y==1);
419. break;
420. default: system("cls"); cout<<"\n\tERROR: Opcion invalida\n";
421. break;
422. }
423. cout << "\n ----------------------------------------------";
424. cout<<"\n\tDesea volver al menu principal?\n\n\tSi= 1 No=0\n";
425. cout<<"\n\tOpcion: "; cin>>vol0;
426. if(vol0==1) { system("cls"); vol1=1; }
427. else if(vol0==0) { cout<<"\n\tGracias por usar el programa!"; }
428. else { y=0; cout<<"\n\tError: Opcion invalida\n\tCerrando Programa"; }
429. }
430. while (vol1==1);
431. return 0;
432. }
▪ Capturas de la compilacion del programa
(Nota: Al inicio de las opciones 2, 3, 4. Si puse la función system("cls"); para limpiar la pantalla,
pero no funciona, creo que es culpa del copilador.)
Opcion 3: Saldo
Opcion 4: Salir