Con la tecnología de Blogger.

Ejercicio 9 de Vectores en lenguaje C

En este ejercicio de vectores en lenguaje de programación C, vamos a encontrar la primera secuencia de seis números iguales en posiciones contiguas, indicando el número que se repite del vector y en que posición empieza y en cual acaba, del vector.

Ejercicio a mi manera, no de la forma más depurada.

#include <stdio.h>
#define N 12
#define IGUAL 6

void main (void) {

int i,v[N]={2,3,3,2,2,3,4,4,4,4,4,4};
for(i=0;((i<N)&&(v[i]*v[i]*v[i]*v[i]*v[i]*v[i]!=v[i]*v[i+1]*v[i+2]*v[i+3]*v[i+4]*v[i+5]));i++)
{
}
if(i<N)
printf("He encontrado una secuencia de %d números iguales, el %d, del %d al %d",IGUAL,v[i],i,i+(IGUAL-1));
else
printf("No he encontrado nada");
}

Ejercicio a la manera del profesor:

#include <stdio.h>
#define N 12

void main (void) {

int i,contador,num;
int v[N]={2,3,3,2,2,3,4,4,4,4,4,4};
i=1;
num=v[0];
contador=1;
while(i<N&&contador<6)
{
if(v[i]==num)
contador++;
else
{
num=v[i];
contador=1;
}
i++;
}
if(contador==6)
printf("La secuencia esta en %d-%d y es de %d",i-6,i-1,v[i-i]);
else
printf("No he encontrado nada");
}
Share on Google Plus

Sobre Rafa

Soy un apasionado de las nuevas técnologias, Internet, los videojuegos, la cultura japonesa y de USA.
    Blogger Comment
    Facebook Comment

2 comentarios:

  1. Están genial los ejercicios , me han servido mucho.
    Una pregunta, al inicio del programa, donde pone void main (void) { , no habría que poner un int en vez de un void?, por que el programa devuelve un número entero no?
    Saludos.

    ResponderEliminar
    Respuestas
    1. Si no recuerdo mal, en C se usa siempre "void main (void)" para la ejecución al igual que en Java se usa el "public class void main(String[] args)" ya que es la ejecución del programa y no devuelve ningún valor, de todas formas, ahora he mirado el código y ya no recuerdo mucha parte de este :-/

      Eliminar

Gracias por comentar ;-)