Pregunta sobre la funcion "for"

Iniciado por incur, 31 Mayo 2013, 21:04 PM

0 Miembros y 1 Visitante están viendo este tema.

incur

Buenas, a ver si me pueden ajudar con este codigo..
Tengo una funcion for con 6 "canales" i solo quiero que me imprima en un fichero x ejemplo el canl num 2, el 4 y 5... como transcribo esto??? graciass

for(banda=0; banda<6; banda++)
{
   fprintf(sortida, "Banda %d\n",banda+1);
       for ( m=-semi; m<=semi; m++)
       {
          for ( n=-semi; n<=semi; n++)   
          {
           if(banda==0 || banda==1 || banda==4)
           //fprintf(sortida," %5d ",imatge[amplada*(y+m)+(x+n) + banda*sup]);
           fprintf(sortida, "%d %d %d\n", banda=2, banda=4, banda=5);
          }
         
       }
}

incur

YA LO TENGO!! GRACIAS IGUALMENTE!!!

rir3760

1) Colocas los canales a procesar en un array.
2) En el bucle iteras un numero de veces igual a los canales a procesar. Utilizas el contador como indice del array para conocer que canal procesar.

Un programa de ejemplo:
#include <stdio.h>
#include <stdlib.h>

int main(void)
{
   int canal[] = {2, 4, 5};
   size_t num_canales = sizeof canal / sizeof canal[0];
   size_t i;

   /* ... */

   for (i = 0; i < num_canales; i++)
   {
      /* Procesamos canal[i] */
      printf("El canal a procesar en esta iteracion es %d\n", canal[i]);
   }
   
   return EXIT_SUCCESS;
}


Un saludo
C retains the basic philosophy that programmers know what they are doing; it only requires that they state their intentions explicitly.
--
Kernighan & Ritchie, The C programming language