Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- /***************** Retos C++ HxC ***********************
- * * Ejercicio 1: Escribir el nombre de cada digito
- * * Ejercicio 2: Leer contenido de un archivo de texto
- * * Ejercicio 3: Localizar el numero mayor en una cadena de
- * * 4 digitos introducidos por el usuario
- * Propuesto por: stakewinner00 *
- * Hecho por: Tryger *
- * *
- * Perdon por el retraso... *
- *******************************************************/
- #include <iostream>
- #include <string>
- #include <fstream>
- #include <stdlib.h>
- using namespace std;
- void ejercicio3();
- int StringToInt(string cadena);
- int Conversion(char caracter, int factor, int valor);
- void ejercicio1() {
- string numero;
- cout << "Numero: ";
- cin >> numero;
- for (int i =0; i<numero.length(); i++) {
- char digito = numero[i];
- switch (digito) { //Numeros en letras
- case '1': cout << "uno ";
- break;
- case '2': cout << "dos ";
- break;
- case '3': cout << "tres ";
- break;
- case '4': cout << "cuatro ";
- break;
- case '5': cout << "cinco ";
- break;
- case '6': cout << "seis ";
- break;
- case '7': cout << "siete ";
- break;
- case '8': cout << "ocho ";
- break;
- case '9': cout << "nueve ";
- break;
- case '0': cout << "cero ";
- break;
- }
- }
- cout << endl << endl;
- }
- void ejercicio2() { //Leer fichero de texto
- string linea;
- ifstream lector;
- lector.open ("fichero.txt");
- while(!lector.eof()) {
- getline(lector,linea);
- cout << linea << endl;
- }
- lector.close();
- }
- void ejercicio3() { //Encontrar el numero mayor
- int cadena[4];
- string precadena;
- cout << "Introduzca 4 numeros separados con un espacio: ";
- getline(cin,precadena);
- precadena += ' ';
- //Convertir la linea introducida a array integer...
- int x = 0;
- string partes;
- for(int i=0;i<precadena.length();i++) {
- if(precadena[i]!=' ') {
- partes += precadena[i];
- }
- else {
- cadena[x] = StringToInt(partes);
- partes = "";
- x++;
- }
- }
- //Encontrar el mayor...
- int pCont = 0;
- for (int i = 0; i < 4; i++) {
- for (int f = 0; f < 4; f++) {
- if (cadena[i] >= cadena[f]) {
- pCont++;
- }
- }
- if(pCont == 4){
- cout << cadena[i] << endl;
- break;
- }
- pCont = 0;
- }
- }
- //Convertir una cadena string en integer
- int StringToInt(string cadena) {
- int valor = 0;
- for (int i = 0; i < cadena.length(); i++) {
- if (i != 0) {
- valor = Conversion(cadena[i], 10, valor);
- }
- else {
- valor = Conversion(cadena[i],1, valor);
- }
- }
- return valor;
- }
- int Conversion(char caracter, int factor, int valor) { //
- switch (caracter) {
- case '1': valor = valor * factor + 1;
- break;
- case '2': valor = valor * factor + 2;
- break;
- case '3': valor = valor * factor + 3;
- break;
- case '4': valor = valor * factor + 4;
- break;
- case '5': valor = valor * factor + 5;
- break;
- case '6': valor = valor * factor + 6;
- break;
- case '7': valor = valor * factor + 7;
- break;
- case '8': valor = valor * factor + 8;
- break;
- case '9': valor = valor * factor + 9;
- break;
- case '0': valor *= factor;
- break;
- default: cout << "Error en la conversion.";
- break;
- }
- return valor;
- }
- int main() {
- ejercicio1();
- ejercicio2();
- ejercicio3();
- return 0;
- }
Add Comment
Please, Sign In to add comment