elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.


 


Tema destacado: Security Series.XSS. [Cross Site Scripting]


+  Foro de elhacker.net
|-+  Programación
| |-+  Programación C/C++ (Moderadores: Eternal Idol, Littlehorse, K-YreX)
| | |-+  [AYUDA] Dos dudas para mostrar por pantalla
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] 2 Ir Abajo Respuesta Imprimir
Autor Tema: [AYUDA] Dos dudas para mostrar por pantalla  (Leído 2,646 veces)
Kougami

Desconectado Desconectado

Mensajes: 53


Ver Perfil
[AYUDA] Dos dudas para mostrar por pantalla
« en: 7 Enero 2017, 17:47 »

Buenas,
Escribo para pedir ayuda con dos cosas, la primera es como hacer para mostrar por pantalla "-" el guion, tantas veces como quiera.
Y la segunda es, leyendo un array con numeros, como hacer para que cuando el numero leido sea 0, muestre por pantalla todo el array y los 0, no muestre nada.
Si el array es:

int tam[10]={1,2,0,4,5,6,0,8,9,10}

Por pantalla aparezca:

1 2   4 5 6   8 9 10
----------------------

Muchas gracias de antemano


En línea

4dr14n31t0r

Desconectado Desconectado

Mensajes: 85



Ver Perfil
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #1 en: 7 Enero 2017, 19:33 »

En primer lugar aqui no le hacemos los deberes a nadie, solo respondemos dudas.
En segundo lugar:
-Para mostrar el guion una determinada cantidad de veces, puedes crear un array con capacidad para guardar la cantidad de guiones que sea y llenarlo con guiones, y despues recorrerlo imprimiendo cada elemento del array, o puedes crear un array con un elemento mas y ponerle al final el caracter nulo e imprimir directamente el array como si de un string se tratase. De hecho, puedes incluso imprimir un guion la cantidad de veces que necesites.
-Para el otro ejercicio, vas imprimiendo los numeros de uno en uno y si el numero que vas a imprimir es cero imprimes espacio de lo contrario imprimes el numero.


En línea

Kougami

Desconectado Desconectado

Mensajes: 53


Ver Perfil
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #2 en: 7 Enero 2017, 20:47 »

No creo que sean los deberes, mi duda viene cuando, en el caso de los numeros, al compilar me dice que no puedo hacer que cuando lo que lee es un 0, muestre por pantalla un espacio blanco. El codigo es asi:
Código
  1. void mostrar(){
  2.  int i, material;
  3.  for (i = 0; material = tam[i]; i++){
  4.      if (material == 0){
  5.          material = " ";
  6.      }
  7.      cout <<"|" <<material <<"|";
  8.  }
  9.  cout <<endl;
  10. }
  11.  
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.410


ASMático


Ver Perfil WWW
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #3 en: 7 Enero 2017, 21:43 »

Tal vez quisieras poner:
Código
  1. void mostrar(){
  2.  int i, material;
  3.  for (i = 0; i<10; i++){ // Condición para romper el bucle: que i no sea menor que 10
  4.      material = tam[i]; // Aquí asignas la variable
  5.      if (material == 0){
  6.          material = " ";
  7.      }
  8.      cout <<"|" <<material <<"|";
  9.  }
  10.  cout <<endl;
  11. }
En línea

Kougami

Desconectado Desconectado

Mensajes: 53


Ver Perfil
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #4 en: 8 Enero 2017, 21:55 »

Me sigue dando error de conversion
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.410


ASMático


Ver Perfil WWW
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #5 en: 8 Enero 2017, 22:05 »

Oh, el: material = " ";
No puedes asignar una cadena como esa (char*) a un int. Además, un cout d eun int siempre va a escribir un número; no hay ningún número "vacío".
Tendrás que poner 2 cout, uno en el if y otro en el else, por ejemplo.

Y como detalle, cuando tengas dudas así, pon por aquí el error y su línea. El error tal cual te lo pone el compilador.
En línea

Kougami

Desconectado Desconectado

Mensajes: 53


Ver Perfil
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #6 en: 9 Enero 2017, 10:32 »

Osea que seria algo asi:
Código
  1. if (material == 0){
  2.   cout <<"| |";
  3. }
  4. else{
  5.   cout <<"|" <<material <<"|":
  6. }
  7.  
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.410


ASMático


Ver Perfil WWW
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #7 en: 9 Enero 2017, 20:46 »

El resultado es el que buscas imagino, así que sí.
En línea

Kougami

Desconectado Desconectado

Mensajes: 53


Ver Perfil
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #8 en: 9 Enero 2017, 22:01 »

Muchas gracias, una ultima cosa, porque si leo de un fichero una serie de numeros, lo guardo en un array para el cual uso un typedef y luego lo muestro. Al querer escribir en un nuevo fichero de txto los numeros del array no se escriben y aun asi el compilador me deja compilar, el codigo de escritura es el siguiente:

Código
  1. void pedirSalida(string& msg) {
  2. cout << "Introduzca el nombre del fichero de escritura: ";
  3. cin >> msg;
  4. }
  5.  
  6. void escribirSalida(string msg, tFilas fila) {
  7. ofstream fichs;
  8. fichs.open(msg);
  9. for (int i = 0; i < 20; i++) {
  10. fichs << fila[i] << endl;
  11. }
  12. fichs.close();
  13. }
En línea

ivancea96


Desconectado Desconectado

Mensajes: 3.410


ASMático


Ver Perfil WWW
Re: [AYUDA] Dos dudas para mostrar por pantalla
« Respuesta #9 en: 9 Enero 2017, 22:18 »

Después del "fichs.open(msg);", prueba a poner:
Código
  1. if(!fichs.is_open()){
  2.    cout << "Error" << endl;
  3. }

¿El fichero se crea? ¿Tiene algún contenido?
En línea

Páginas: [1] 2 Ir Arriba Respuesta Imprimir 

Ir a:  

Aviso Legal - Powered by SMF 1.1.21 | SMF © 2006-2008, Simple Machines