Cita de: leosansan en 9 Noviembre 2012, 12:16 PMCódigo (cpp) [Seleccionar]puts ("cambio fila primera ultima\n");
Saludos!.
for (j=0;j<TAM;j++)
{
temp1=b[0][j];
temp2=b[TAM-1][j];
b[TAM-1][j]= temp1;
b[0][j]= temp2;
}
sigo sin entenderlo...
Esta sección te permite ver todos los mensajes escritos por este usuario. Ten en cuenta que sólo puedes ver los mensajes escritos en zonas a las que tienes acceso en este momento.
Mostrar Mensajes MenúCita de: leosansan en 9 Noviembre 2012, 12:16 PMputs ("cambio fila primera ultima\n");
Saludos!.
for (j=0;j<TAM;j++)
{
temp1=b[0][j];
temp2=b[TAM-1][j];
b[TAM-1][j]= temp1;
b[0][j]= temp2;
}
CitarGenerar una matriz de 10x10 numérica entera , a continuación pedir dos números de fila, que se deben filtrar entre 1 y 10 e intercambiar ambas filas. Presentar las matrices antes y después del cambio.
Cita de: ecfisa en 7 Noviembre 2012, 19:38 PM
Hola.
No vas nada mal encaminado... lo que si, se puede usar una sola funcion para generar ambos arreglos, así como también otra para que realize la suma.
Por ejemplo y mayormente basado en tu codigo:
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define NUM 10
void generar_vector(int *);
void sumar_vectores(int *, int *, int *);
void imprimir_vectores(int *, int *, int *);
int main(void) {
int v1[NUM], v2[NUM], v3[NUM];
srand(time(NULL));
generar_vector(v1);
generar_vector(v2);
sumar_vectores(v1,v2,v3);
imprimir_vectores(v1,v2,v3);
getchar();
return EXIT_SUCCESS;
}
void generar_vector(int *v) {
int i;
for(i=0;i<NUM;i++)
v[i]=(rand()%100+1)/10;
}
void sumar_vectores(int *v1, int *v2, int *v3) {
int i;
for(i=0;i<NUM;i++)
v3[i] = v1[i]+v2[i];
}
void imprimir_vectores(int *v1, int *v2, int *v3)
{
int i;
for(i=0;i<NUM;i++)
printf("%d %d %d\n",v1[i],v2[i],v3[i]);
}
La declaración de los parámetros como punteros es equivalente a la tuya podes usar la que prefieras, es decir:
void sumar_vectores(int *, int *, int *);
...
void sumar_vectores(int *v1, int *v2, int *v3) {
// Es equivalente a hacer:
void sumar_vectores(int [], int [], int []);
...
void sumar_vectores(int v1[], int v2[], int v2[]) {
...
Saludos.
Citarleer dos vectores de dimensión 10 y construir un tercer vector, e imprimirlo cuyos componentes sean la suma de los dos anteriores
#include <stdio.h>
#include <stdlib.h>
#include <time.h>
#define num 10
void generar_vector(int v[]);
void imprimir_vector(int v[]);
void generar_vector2 (int v2[]);
void imprimir_vector2 (int v2[]);
int main(void)
{ srand(time(NULL));
int v[num];
int v2[num];
generar_vector(v);
imprimir_vector(v);
return EXIT_SUCCESS;
}
void generar_vector(int v[])
{
int t;
for(t=0;t<num;t++)
{
v[t]=(rand()%100+1)/10;//para generar datos float (con decimales)
}
}//fin del generar vector
void imprimir_vector(int v[])
{
int t,i;
for(t=0;t<num;t++)
{
printf("%d\n",v[t]);
fflush(stdout);
}
for(i=0;i<num;i++)
{
printf(" \n%d",v[i]);
fflush(stdout);
}
}//fin de imprimir vector
void generar_vector2 (int v2[])
{
int t,suma=0;
int v[num];
for(t=0;t<num;t++)
{
suma=suma+generar_vector(v);
}
}
void imprimir_vector2 (int v2[])
{ int i;
for(i=0;i<num;i++)
{
printf(" \n%d",v2[i]);
fflush(stdout);
}
}
#include <stdio.h>
#include <stdlib.h>
#include <ctype.h>
#include <string.h>
char menu(void);
void mayus(char []);
void minus(char []);
int main(void) {
char frase[80];
int opc;
printf("Introduce una cadena \n");
fflush(stdout);
fflush(stdin);
gets(frase);
printf("Elige una opción: \n");
fflush(stdout);
opc=menu();
if(opc=='1')
mayus(frase);
if (opc=='2')
minus(frase);
return 0;
}
char menu(void)
{ char opcion;
do
{
printf("1.Pasara a mayúsculas \n");
printf("2. Pasar a minusuclas \n");
fflush(stdout);
scanf("%c",&opcion);
} while(strchr("12",opcion)==NULL);
return opcion;
} //fin del menu
void mayus(char frase [])
{
int t;
for(t=0;t<strlen(frase);t++)
{
if(islower(frase[t]) !=0)
{
frase[t]=toupper(frase[t]);
}
}
printf("%s",frase);
fflush(stdout);
} //fin de mayus
void minus(char frase [])
{
int t;
for(t=0;t<strlen(frase);t++)
{
if(isupper(frase[t]) !=0)
{
frase[t]=tolower(frase[t]);
}
}
printf("%s",frase);
fflush(stdout);
} //fin de minus