• Domingo 28 de Abril de 2024, 23:48

Mostrar Mensajes

Esta sección te permite ver todos los posts escritos por este usuario. Ten en cuenta que sólo puedes ver los posts escritos en zonas a las que tienes acceso en este momento.


Temas - crocop

Páginas: [1]
1
MySQL / problema con duplicacion de campos
« en: Domingo 12 de Diciembre de 2010, 15:25 »
hola amigos les cuento toy realizando un libro de clases en  con 4 tablas .
Código: XML
  1.  
  2. [u]tabla anotacion[/u]  [u]tabla alumnos [/u]    [u]tabla asignatura [/u]     [u]tabla notas_alumno[/u]
  3. cod_anotacion     [b]rut_alumno [/b]      [b]  cod_asignatura[/b]        [b] cod_notas[/b]
  4. [b]rut_alumno [/b]        nom_alumno        nom_asignantura     [b]cod_asignatura[/b]
  5. anotacion                                              [b]     rut_alumno[/b]
  6.                                                            nota
  7.                                                            porcentaje
  8.  
  9.  


Quiero mostrar : rut_alumno, nom_alumno,nom_asignatura,nota,porcentaje,anotacion

mi problema es que cuando hago la  consulta de listar con este query SE DUPLICAN LOS DATOS:
Código: XML
  1. Rut     Nombre  Nombre asignatura   Notas         porcentaje        Anotaciones
  2. 12343234-4  andres  ingles                   44                        55%             bien
  3.  
  4. 12343234-4  andres  ingles                  44                     55%             bien
  5.  
  6. 12343234-4  andres  ingles                 23                      34%             bien
  7.  
  8. 12343234-4  andres  ingles                23                       34%             bien
  9.  


SELECT a.rut_alumno, a.nom_alumno, b.cod_asignatura, b.nom_asignatura, c.cod_anotacion, c.rut_alumno, c.anotacion, d.cod_nota, d.cod_asignatura, d.rut_alumno, d.nota , d.porcentaje
FROM alumnos a, asignaturas b, anotaciones_alumno c, notas_alumno d
WHERE a.rut_alumno=d.rut_alumno and d.rut_alumno=c.rut_alumno and d.cod_asignatura=b.cod_asignatura


cual seria mi problema?  muchas gracias!

2
C/C++ / intercalacion triangulares matrices
« en: Sábado 1 de Noviembre de 2008, 19:58 »
hola tengo un problema con la intercalacion de las triangulares inferior y superior de la diagonal secundaria

si tengo una matriz de 3*3
|0.0,0.1,0.2|
|1.0,1.1,1.2|                    
|2.0,2.1,2.2|   


la intercalacion seria asi:
 |2.2,1.2,0.2|        
 |2.1,1.1,0.1|
 |2.0,1.0,0.0|



         pero me queda asi:

             |2.2,2.1,0.2|        
             |1.2,1.1,1.0|
             |2.0,0.1,0.0|

aqui esta mi codigo agradesco aportes =)
Código: Text
  1.  
  2.  #include<stdio.h>
  3.  #include<conio.h>
  4.  #include<stdlib.h>
  5.  void ingrese(int m[10][10],int n);
  6.  void main()
  7.  {
  8.  int ma[10][10]={0},n=0;
  9.  clrscr();
  10.  printf("ingrese el tama¤o de la matriz n*nn");
  11.  scanf("%d",&n);
  12.  ingrese(ma,n);
  13.  getch();
  14.  }
  15.  void ingrese(int matriz[10][10],int n)
  16.  {
  17.  int mb[10][10]={0},f=0,c=0,m=0,l=0,x=30,y=4;
  18.  textcolor(GREEN);
  19.  randomize();
  20.  for(f=0;f<n;f++){
  21.      for(c=0;c<n;c++){
  22.         gotoxy(x,y);
  23.         matriz[f][c]=random(n+n);
  24.         cprintf(" %dn",matriz[f][c]);
  25.         x=x+11;}
  26.         y=y+2;
  27.         x=30;}
  28.  for(f=0,m=n-1;f<n;f++,m--){
  29.      for(c=0,l=n-1;c<n;c++,l--){
  30.      if(((f+c)<(n-1))&&((m+l)>(n-1))){
  31.      mb[m][l]=matriz[f][c];
  32.      }}}
  33.  
  34.      for(m=0,f=n-1;m<n;m++,f--){
  35.         for(l=0,c=n-1;l<n;l++,c--){
  36.         if(((m+l)<(n-1))&&((f+c)>(n-1))){
  37.         mb[m][l]=matriz[f][c];
  38.         }}}
  39.  
  40.         for(f=0,m=0;f<n;f++,m++){
  41.         for(c=0,l=0;c<n;c++,l++){
  42.         if((f+c)==(n-1)){
  43.         mb[m][l]=matriz[f][c];
  44.         }}}
  45.         textcolor(RED);
  46.         x=30;
  47.         y=16;
  48.         for(f=0;f<n;f++){
  49.         for(c=0;c<n;c++){
  50.         gotoxy(x,y);
  51.         cprintf(" %dn",mb[f][c]);
  52.         x=x+11;}
  53.         y=y+2;
  54.         x=30;}
  55.  
  56.  
  57.  
  58.  
  59.  
  60.  }
  61.  
  62.  

3
C/C++ / intercalar cadenas
« en: Domingo 26 de Octubre de 2008, 05:06 »
hola tengo un problema con este programa ; el programa intercala cadenas por ejemplo:
cadena1=ola , cadena2=chao , cadena3=oclhaao .el  problema es cuando las cadenas no que  tienen el mismo numero de caracteres, el problema esta  cuando la primera cadena es menor en numero de caracteres que la segunda cadena. solo me devuelve el valor hasta su ultimo valor
por ejemplo: cadena1= a , cadena2=bye , cadena3= ab

no asi cuando es mayor la primera que la segunda ejemplo:
cadena1= bye , cadena2=a , cadena3= baye

aqui esta el programa, agradesco aportes  :good:

Código: Text
  1. #include<stdio.h>
  2. #include<conio.h>
  3. #include<string.h>
  4. #include<ctype.h>
  5. void llenar_cadena(char cadena[80]);
  6. void mostrar_cadena(char cadena1[80],char cadena2[80],char cadena3[80]);
  7. void main ()
  8. {
  9. char c[80]={0},s[80]={0},f[80]={0};
  10.  
  11. clrscr();
  12. llenar_cadena(c);
  13. llenar_cadena(s);
  14. mostrar_cadena(c,s,f);
  15. getch();
  16. }
  17. void llenar_cadena(char cadena[80])
  18. {
  19. puts("ingrese cadena");
  20. gets(cadena);
  21. }
  22. void mostrar_cadena(char cadena1[80],char cadena2[80],char cadena3[80])
  23. {
  24. int i=0,j,n,subs=1,subc=0;
  25. while(i<=(strlen(cadena1)+strlen(cadena2))){
  26. //cadena2[subc]=cadena[i];
  27. if(cadena1[i]==''){
  28. while(i<=strlen(cadena2)){
  29. cadena3[subs]=cadena2[i];
  30. subs++;
  31. i++; }
  32. printf("la intercalacion es %sn",cadena3);
  33. break;}
  34. cadena3[subc]=cadena1[i];
  35. //cadena2[subs]=cadena1[i];
  36. if(cadena2[i]==''){
  37. while(i<=strlen(cadena1)){
  38. cadena3[subc]=cadena1[i];
  39. subc++;
  40. i++; }
  41. printf("la intercalacion es %sn",cadena3);
  42. break;}
  43. cadena3[subs]=cadena2[i];
  44. subc+=2;
  45. subs+=2;
  46. i+=1;
  47. }
  48. }
  49.  

4
C/C++ / Duda sobre punteros
« en: Sábado 18 de Octubre de 2008, 22:12 »
hola tengo esta duda es pequeña

Lo importante es notar el uso de punteros, no es lo mismo:

*k++;

Que:

(*k)++;



alquien me puede explicar porque no es lo mismo? .

saludos gracias por los aportes

5
C/C++ / funciones retorno por puntero y return
« en: Viernes 17 de Octubre de 2008, 02:20 »
hola como estan tengo un problema con este programa:
tengo que ingresar numeros enteros pero solo multiplos de 7 deben entrar en una matriz de m*n.
los datos no multiplos de 7 se pide devolver la cantidad de numeros y el promedio de ellos.
el problema no es en la resolucion del programa sino que tengo que devolver los 2 valores en el main principal y no por funcion osea ,   1 puntero y el otro por return.
aqui les dejo lo que tengo de antemano gracias. se agradecen lo aportes  8)
 
Código: Text
  1.  
  2. #include<stdio.h>
  3. #include<conio.h>
  4. void ingreso(int matriz1[10][10], int matriz2[10][10], int m, int n,int sum,int *k,float *prom);
  5. void main ()
  6. {
  7. int m1[10][10],m2[10][10],v[20],m,n,sum,k=0;
  8. float prom=0;
  9. clrscr();
  10. printf("ingrese el tama¤o de la matrizn");
  11. scanf("%d",&m);
  12. scanf("%d",&n);
  13. ingreso(m1,m2,m,n,sum,&k,&prom);
  14. printf("la cantidad de n no multiplos son %dn",k);
  15. printf("el promedio es %gn",prom);
  16. getch();
  17. }
  18. void ingreso(int matriz1[10][10], int matriz2[10][10], int m, int n,int sum,int *k,float *prom)
  19. {
  20. int i,j,p;
  21. for(i=0;i<m;i++){
  22.  for(j=0;j<n;j++){
  23. printf("ingrese los numeros a la matrizn");
  24. scanf("%d",&matriz1[i][j]);
  25. }
  26. }
  27. for(i=0;i<m;i++){
  28.  for(j=0;j<n;j++){
  29.  if(matriz1[i][j]%7==0){
  30.  matriz2[i][j]=matriz1[i][j];
  31.  }}}
  32.  for(i=0;i<m;i++){
  33.  for(j=0;j<n;j++){
  34.  if(matriz1[i][j]%7!=0){
  35.  sum=sum+matriz1[i][j];
  36.  *k++;
  37.   p++;
  38.  }}}
  39.  *prom=(sum/p);
  40.  }
  41.  
  42.  
  43.  

6
C/C++ / funciones y cadenas
« en: Viernes 10 de Octubre de 2008, 04:43 »
ola tengo un problema con funciones tengo que hacer un programa con funciones que intercale dos cadenas en una tercera cadena  ejemplo : cadena1=hola, cadena2=chao; cadena3=hcoaldaena; esto es lo que tengo.
creo que el problema es con las cadenas que ingreso, en un tema de variables locales y generales, eso gracias espero aportes saludos.
Código: Text
  1.  
  2. #include<stdio.h>
  3. #include<conio.h>
  4. #include<string.h>
  5. #include<ctype.h>
  6. void llenar_cadena(char cadena[80]);
  7. void mostrar_cadena(char cadena[80]);
  8. void main ()
  9. {
  10. char c[80],s[80],f[80];
  11.  
  12. clrscr();
  13. llenar_cadena(c);
  14. llenar_cadena(s);
  15. mostrar_cadena(c,s,f);
  16. getch();
  17. }
  18. void llenar_cadena(char cadena[80])
  19. {
  20. puts("ingrese cadena");
  21. gets(cadena);
  22. }
  23. void mostrar_cadena(char cadena[80])
  24. {
  25. int i;
  26.  
  27. for(i=0;i<=strlen[c]+strlen[s];i++){
  28. f[i]=c[i];
  29. f[i+1]=s[i]; }
  30. printf("la intercalacion es %sn",f);
  31. }
  32.  

7
C/C++ / matriz menor mayor e igual
« en: Sábado 27 de Septiembre de 2008, 02:33 »
ola tengo un problema con determinar el mayor menor e igual de una matriz m*n
al mostrar el resultado no muestra como deberia se agradecen aportes aqui esta mi codigo =)

Código: Text
  1. #include<stdio.h>
  2. #include<conio.h>
  3. #include<stdlib.h>
  4. void main()
  5. {
  6. int matriz[10][10]={0},f,c,menor,mayor,igual,m=0,n=0,kombawa=0;
  7. clrscr();
  8.  
  9. printf("ingrese el tama¤o de sus matrizn");
  10. scanf("%d",&m);
  11. scanf("%d",&n);
  12.  
  13.     for(f=0;f<m;f++){
  14.      for(c=0;c<n;c++){
  15.      printf(" ingrese los datos para su matrizn");
  16.      scanf("%d",&matriz[f][c]);
  17.      if(matriz[f][c]==kombawa){
  18.         igual=matriz[f][c];}
  19.  
  20.      else if(matriz[f][c]>kombawa){
  21.         mayor=matriz[f][c];}
  22.  
  23.        else if(matriz[f][c]<kombawa){
  24.           menor=matriz[f][c]; }
  25.           kombawa=matriz[f][c];
  26.  
  27.           }
  28.           }
  29.      printf("los numeros son igual mayor menor %d %d %dn",igual,mayor,menor);
  30.  
  31.      getch();
  32.      }
  33.  

8
C/C++ / problema con long int
« en: Viernes 26 de Septiembre de 2008, 02:15 »
hola tengo un problema con long int nose como mostrarlo en salida, me sale despues de que el resultado excede 30000 , me tira cualquier numero.  aqui esta mi codigo se agradecen aportes  :)

Código: Text
  1. #include<stdio.h>
  2. #include<conio.h>
  3. #include<ctype.h>
  4. void main()
  5. {
  6.  int n=0,i,npc=0;
  7.  long int res1, res2,res3;
  8.  clrscr();
  9.  
  10.  printf("ingrese numero de empleados de su empresan");
  11.  scanf("%d",&n);
  12.  
  13.     for(i=0;i<n;i++){
  14.     printf("ingrese el numero de PCs armados del empleado nro %d",i);
  15.     scanf("%d",&npc);
  16.     if (npc<40){
  17.     res1=npc*10000;
  18.     printf("el monto a cancelar del empleado %d es %ldn",i,res1);}
  19.      else if (npc>40){
  20.     res2=npc*5500;
  21.     printf("el monto a cancelar del empleado %d es %ldn",i,res2);}
  22.       else if(npc>60){
  23.     res3=npc*8700;
  24.     printf("el monto a cancelar del empleado %d es %ldn",i,res3);
  25.     }
  26.     }
  27.     getch();
  28.     }
  29.  

9
C/C++ / matriz problema grafico
« en: Viernes 19 de Septiembre de 2008, 22:57 »
hola , bueno tengo un programa de una matriz y tengo que mostrar su diagonal superior, bueno eso es facil; el problema es que tengo que mostrarlo en forma grafica que se destaque la diagonal con textcolor etc y esto es lo que tengo pero no me funciona nose cual es mi error  gracias de antemano

         
Código: Text
  1. #include<stdio.h>
  2.          #include<conio.h>
  3.          #define n 4
  4.          void main()
  5.           {
  6.           int m[n][n],f,c,k=1,x=30,y=4;
  7.  
  8.         clrscr();
  9.     gotoxy(20,2);
  10.     printf("ingrese datos para la matriz ");
  11.     for(f=0;f<4;f++){
  12.      for(c=0;c<4;c++){
  13.      gotoxy(x,y);
  14.      printf(" %dn",k);
  15.      scanf("%d",&m[f][c]);
  16.      x=x+11;
  17.      k++;
  18.      }
  19.      y=y+2;
  20.      x=30;
  21.      }
  22.          printf("diagonal superior");
  23.      for(f=0;f<4;f++){
  24.      for(c=0;c<4;c++){
  25.      gotoxy(x,y);
  26.      printf("%d ",m[f][c]);
  27.      if(f==c){
  28.      gotoxy(x,y);
  29.      textcolor(GREEN);
  30.      }
  31.      x=x+11;
  32.      }
  33.      y=y+2;
  34.      x=30;
  35.      }
  36.          getch();
  37.     }
  38.  

10
C/C++ / help
« en: Martes 16 de Septiembre de 2008, 01:51 »
ola como puedo sacar la diagonal inferior y sus triangulares tengo la diagonal superior y sus triangulares pero para la inferior no encuentro la condicion





Código: Text
  1.  
  2. CÓDIGO
  3. #define n 4
  4. void main()
  5. {
  6. int m[n][n],f,c;
  7. clrscr();
  8.     for(f=0;f<4;f++){
  9.      for(c=0;c<4;c++){
  10.      //gotoxy(c+20,f+10);
  11.      printf("ingrese datos para la matriz en la fila %d y columna %dn",f,c);
  12.      scanf("%d",&m[f][c]);
  13.      }
  14.      }
  15.     for(f=0;f<4;f++){
  16.      for(c=0;c<4;c++){
  17.      if(f==c)
  18.      printf("los elementos de la diagonal superior %d %d son %dnt",f,c,m[f][c]);
  19.      }
  20.     }
  21.     for(f=0;f<4;f++){
  22.      for(c=0;c<4;c++){
  23.      if(f<c)
  24.      printf("los elementos de la triangular superior %d %d son %dnt",f,c,m[f][c]);
  25.      }
  26.      }
  27.      for(f=0;f<4;f++){
  28.      for(c=0;c<4;c++){
  29.      if(f>c)
  30.      printf("los elementos de la triangular inferior %d %d son %dnt",f,c,m[f][c]);
  31.      }
  32.      }
  33.      clrscr();
  34.    
  35.      }
  36.     getch();
  37.     }
  38.  

11
C/C++ / matrices c++
« en: Domingo 7 de Septiembre de 2008, 00:14 »
tengo un programa que suma el total por fila(3) y el total por columnas(3) en dos vectores pero al entregar el valor me tira numeros gigantes cual sera el error?
Código: Text
  1. #include<stdio.h>
  2. #include<conio.h>
  3. void main()
  4. {
  5. int m[3][3],f,c,vectorf[3],vectorc[3];
  6. clrscr();
  7.     for(f=0;f<3;f++){
  8.     for(c=0;c<3;c++)
  9.     {
  10.     printf("ingrese dato:%d :%dn",f,c);
  11.     scanf("%d",&m[f][c]);
  12.     }
  13.     }
  14.     for(f=0;f<3;f++){
  15.     for(c=0;c<3;c++)
  16.     {
  17.     vectorf[f]=vectorf[f]+m[f][c];
  18.     }
  19.     }
  20.     for(c=0;c<3;c++)
  21.     for(f=0;f<3;f++){
  22.     {
  23.     vectorc[c]=vectorc[c]+m[f][c];
  24.     }
  25.     }
  26.     for(f=0;f<3;f++){
  27.     printf("tla suma de las fila :%d son :%d n",f,vectorf[f]);
  28.     }
  29.     for(f=0;f<3;f++){
  30.     printf("tla suma de las columna :%d son :%d n",f,vectorc[f]);
  31.     }
  32.     getch();
  33.     }
  34.  

12
C/C++ / ejercicio arreglos c++
« en: Viernes 5 de Septiembre de 2008, 00:22 »
hola aqui tengo un ejercicio no tan complicado creo que me faltan  detalles
1- Para un arreglo de 20 enteros ingresados por teclado se pide; ingresar un numero a buscar.
Imprimir cuantas veces fue ingresado; en que pocision y cual es la suma de los valores que lo acompañan.(notece que los extremos del arreglo tambien deben ser validados para la suma por que no tienen valores que lo acompañen).
ejemplo cadena  1 2 3 4 5 8 9 6 5 4 7 1 2 3 4 7 8 9 6 3

Código: Text
  1. #include<stdio.h>
  2. #include<conio.h>
  3. main()
  4. {
  5. clrscr();
  6. int a[20],i,n,sum,nveces,posicion,total;
  7.     for(i=0;i<20;i++){
  8.     printf("ingrese los 20 numeros a procesarn");
  9.     scanf("%d",&a[i]);
  10.     }
  11.     printf("ingrese el numero que desea buscarn");
  12.     scanf("%d",&n);
  13.     for(i=0;i<20;i++){
  14.     if(a[i]==n){
  15.     nveces++;
  16.     i=posicion;
  17.     if(a[i-1]=!' '||a[i+1]=!' ')
  18.     sum=a[i-1]+a[i+1];
  19.     total=total+sum;
  20.     }
  21.     }
  22.     printf("el numero fue ingresado: %dn la suma esn",nveces,sum);
  23.     getch();
  24.     }
  25.  
  26.  
creo que esto esta malo la condicion para saber si se encuentra ubicada en los extremos el numero a buscar   if(a[i-1]=!' '||a[i+1]=!' ')
y se me queda pegado en el for del buscador del n  for(i=0;i<20;i++){
    if(a==n){
tambien nose como guardar la posicion del numero :S     i=posicion; no creo que sea asi
bueno de antemano gracias por los aportes .

13
C/C++ / c++ programa de validacion
« en: Viernes 29 de Agosto de 2008, 02:09 »
hola soy nuevo tengo un probleminga con este programa debe : validar los datos de entrada ademas de sacar 3 notas de n alumnos d eun curso mostrar el promedio del alumno y del total del curso ; nose porque no me valida las notas de 10 a 70 y el porcentaje de asistencia de 0 a 100 bueno eos de antemano graacias

Código: Text
  1. #include<stdio.h>
  2. #include<conio.h>
  3. main()
  4.  
  5. float n,res=0,i,j,prom,promt=0,rest;
  6. int asis,a;
  7. char letra;
  8. clrscr();
  9.  do
  10. {
  11.       printf("ingrese numero de alumnos que desee procesar..n");
  12.       scanf("%d",&a);
  13.       for(j=1;j<=a;j++){
  14.       for(i=1;i<=3;i++){
  15.       do{
  16.       printf("ingrese notan");
  17.       scanf("%f",&n);
  18.       }
  19.       while(n<10&&n>70);
  20.       res=res+n;
  21.       }
  22.       prom=(res)/3;
  23.       do
  24.       {
  25.       printf("ingrese la asistencian");
  26.       scanf("%d",&asis);
  27.       }
  28.       while(asis<0&&asis>100);
  29.       if(asis>=80&&prom>=40)
  30.       printf("usted aprobado con con un promedio de y asistencia :%f :%dn",prom,asis);
  31.       else
  32.       printf("usted ha reprobado por asistencia con un promedio de y asistencia :%f              %dn",prom,asis);
  33. promt=promt+prom;
  34. prom=0;
  35. res=0;
  36. }
  37. rest=(promt)/a;
  38. printf("el promedio total del curso es :%gn",rest);
  39. printf("desea procesar mas alumnos? ingrese y/n n");
  40. scanf("%c",&letra);
  41. }
  42. while(letra=='y');
  43. getch();
  44. }
  45.  

Páginas: [1]