Logasdj Posted June 23, 2013 Report Share Posted June 23, 2013 Les presento el problema:Crear un programa en C, que permita almacenar en una matriz una dirección IP en formato binario, para ello la matriz deberá ser de 4 filas por 8 columnas, de forma tal que cada fila corresponda a un octeto, desde el octeto 1(más a la izq.) fila 0, hasta el octeto 4(más a la der.)fila 3. Las columnas corresponden al valor binario de cada posición del octeto. El programa una vez que haya almacenado los datos en la matriz debe convertir la IP al formato decimal, usando para ello un vector llamado posicional, y dejando el resultado en un vector (arreglo unidimensional) llamado IPdec de 4 elementos. Finalmente debe mostrar la IP en formato binario y Decimal. Y la posible solución (hecha por mi): #include <stdio.h>#include <stdlib.h> main(){ int binario[4][8],decimal[8],unodosocho=256,j,i,f,g,decimale,aaa,bbb,ccc,ddd,a,suma; for(f=0;f<8;f++){unodosocho=unodosocho/2;decimal[f]=unodosocho;} for(i=0;i<4;i++){ for(j=0;j<8;j++) { binario[j]=0; printf("%d",binario[j]); } printf("\n");}for(i=0;i<4;i++){ printf("Ingrese el %d octeto: ",i+1); scanf("%d",&decimale); for(j=7;j>=0;j--) { decimale=decimale%10; printf("%d",decimale); binario[j]=decimale; } printf("\n");} for(i=0;i<4;i++){suma=0;a=0; for(j=0;j<8;j++) { a=decimal[j]*binario[j]; suma=suma+a; } if(i=0) { aaa=suma; } if(i=1) { bbb=suma; } if(i=2) { ccc=suma; } if(i=3) { ddd=suma; } } for(i=0;i<4;i++){ for(j=0;j<8;j++) { printf("%d - ",binario[j]); if(i=0) { printf("%d.",aaa); } if(i=1) { printf("%d.",bbb); } if(i=2) { printf("%d.",ccc); } if(i=3) { printf("%d.",ddd); } } printf("\n");} system("PAUSE"); return 0;} Comentarios: La verdad es que tengo un problema que no tengo claro es con el mod (decimale=decimale%10;) ya que lo que quiero que haga es que vaya posicionado en el arreglo para después poder multiplicarlo con el vector (ojala me puedan ayudar). Link to comment Share on other sites More sharing options...
Recommended Posts
Create an account or sign in to comment
You need to be a member in order to leave a comment
Create an account
Sign up for a new account in our community. It's easy!
Register a new accountSign in
Already have an account? Sign in here.
Sign In Now