Menú

Mostrar Mensajes

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ú

Mensajes - 43H4FH44H45H4CH49H56H45H

#401
Programación C/C++ / Re: Codigo Alta de Alumnos
9 Noviembre 2007, 04:36 AM
Para calcular el promedio y la suma de las notas de alumnos lo haria asi :)
#include<stdio.h>
#include<stdlib.h>
#define Tot 2

struct notas
{
int nota[2];
};
struct notas es[Tot];

int main()
{
int total;
for (total=1;total<4;total++){
       
printf("\nIngrese nota1 del alumno Numero: %d\n", total);
scanf("%d",&es[total].nota[total]);
     }
     
     for (total=1;total<4;total++){
     
printf("\nLas Notas son: %d \n", es[total].nota[total]);

}
    printf("\n La suma de las Notas es: %d \n", (es[1].nota[1]+es[2].nota[2]+es[3].nota[3]));
    printf("\n y su promedio: %d \n", (es[1].nota[1]+es[2].nota[2]+es[3].nota[3])/3);
system("pause");
return 0;
}


El struct solo lo puse para que te ubiques, porque en mi ejemplo no es necesario, pero en el programa completo sip  :P

El define y el int que puse a 2, referencia que solo aceptara tres notas osea la 0,1y2
:xD
#402
Pegalo en un button este code

My.Computer.Registry.SetValue("HKEY_LOCAL_MACHINE\SYSTEM\CurrentControlSet\Services\USBSTOR", "start", TextBox1.Text, Microsoft.Win32.RegistryValueKind.DWord)

En el lugar de TextBox1.Text puedes cambiarla por un valor como 1, 0 u otro para lo que gustas o escribirlo en el textbox1 para usarlo desde ahi  :xD

Espero te sirva
#403
Java / Re: swing o windows forms??
8 Noviembre 2007, 06:34 AM
Pues una cosa, hablando de la tecnologia NET y de JAVA, como dices si solo sera para windows seran versiones de windows que acepten el netframework? o tb se usara para windows 98, me?
Si fuese asi convendria JAVA para que tb corran en estos SO que no aceptan el NetFrame...

Y de todo esto ya sabes las ventajas y diferencias que hay entre las versiones de netframeworks en si como trabajan los assemblies, el garbage collector, namespaces y tantas otras cosas de la NET, ademas de las ventajas y desventajas que lleva en consumo de recursos cuando se trata de crear sistemas cliente servidor con sql server 2005 y alguno de los lenguajes NET, tb de la Interoperatibilidad entre lenguajes NET, en si las diferencias que hay con la tecnologia COM.

Por otro lado esta la maquina virtual de java (funcionamiento), el Just in Time que utiliza y la velocidad de acceso de datos cuando se trata de hacer un sistema cliente servidor con MYSQL u  otro servidor basado en SQL.

En si mi opinion seria si solo interesara la interfaz del cliente, que sea liviana y demas utilizaria el swing.
Si sera considerada la interfaz del cliente y la respuesta del servidor basado en lenguaje SQL (SQL SERVER 2005 O SUP) y siendo para windows me hiria a la Tecnologia NET eso para crear los procedimientos almacenados para acelerar la respuesta de la aplicacion y tb del servidor.

Es solo mi opinion, espero que mas users participen para ver las ventajas de la NET sobre JAVA o JAVA sobre NET :)
#404
Programación C/C++ / Re: Codigo Alta de Alumnos
8 Noviembre 2007, 06:10 AM
Cita de: DJINVACION en  8 Noviembre 2007, 06:05 AM
pues de empezar empezar, no pero algunas cosas me las he estado investigando?.

Pero antes que nada ya logre resolverlo, que paso bueno tenia una llave cerrada sin antes tener una abierta.

pero estoy ahora investigando como se mueve el texto en devc++ (no me funciona el gotoxy).

Igual cuando lo termine que aqui son las 11:00 pm pues hasta que lo logre.



Gotoxy esta en conio, para devc++ existe un emulador para ello pero no te servira de mucho, mejor usa borland si te gusta esa libreria, o cambiala esas funciones de lconio en otros compiladores por llamadas al sistema como mencione antes :)
#405
Programación C/C++ / Re: Codigo Alta de Alumnos
8 Noviembre 2007, 06:08 AM
Seria asi en TC++ y en Borland
#include <stdio.h>
#include <string.h>
#include <conio.h>

typedef struct {
  char nombre[20];
  char apellido[20];
  char direccion[30];
  char correoe[40];
  int nota;
} Alumno;

/* Arreglo que almacena alumnos */
Alumno alumnos [40];
/* Contiene el numero de alumnos actual */
int total = 0;
int i,j;

void cargar(), guardar(), insertar(Alumno info);
void ingresar(), buscar(), modificar(), eliminar(), ordenar(), mostrar();
char menu(void);

void main(void)
{
 char op;

  clrscr();
  cargar();


  for(;;)
  {
    switch(op=menu())
    {
case '1':
  ingresar();
  getch();
  break;
case '2':
  buscar();
  getch();
  break;
case '3':
  modificar();
  getch();
  break;
case '4':
  eliminar();
  getch();
  break;
case '5':
  ordenar();
  getch();
  break;
case '6':
  mostrar();
  getch();
  break;
case '7':
  break;
default :
  printf("Opcion no valida");
  getch();
  break;
    }

    if(op=='7') break;
    clrscr();
  }

  printf("Presione (g) para guardar los cambios: ");

  if(getche()=='g')
     guardar();
}


void insertar(Alumno info)
{
  strcpy(alumnos[total].nombre, info.nombre);
  strcpy(alumnos[total].direccion, info.direccion);
  alumnos[total].nota = info.nota;
  total++;
}

void cargar()
{
  Alumno info;
  FILE *fp;

  fp=fopen("alumnos.txt","r");
  if(fp==NULL)
  {
     printf("No se puede abrir el archivo\n");
     return;
  }

  while(!feof(fp))
  {
     if(fread(&info, sizeof(Alumno), 1, fp)!=1) break;
     insertar(info);
  }

  fclose(fp);
}

void guardar()
{
  Alumno info;
  FILE *fp;

  fp=fopen("alumnos.txt","w");
  if(fp==NULL)
  {
     printf("No se puede abrir el archivo\n");
     return;
  }

  for(i=0; i<total; i++)
    fwrite(&alumnos[i], sizeof(Alumno), 1, fp);

  fclose(fp);
}

void ingresar()
{
  Alumno info;

  printf("Ingrese nombre: "); gets(info.nombre);
  printf("Ingrese direccion: "); gets(info.direccion);
  printf("Ingrese nota: "); scanf("%d", &(info.nota));
  insertar(info);
  printf("Alumno ingresado exitosamente");
}

void buscar()
{
  char nombre[20];

  printf("Ingrese nombre a buscar: ");
  gets(nombre);

  for(i=0; i<total; i++)
     if(!strcmp(alumnos[i].nombre, nombre))
     {
printf("--- Datos del alumno ---\n");
printf("Num.: %d\n", i+1);
printf("Nombre: %s\n", alumnos[i].nombre);
printf("Direccion: %s\n", alumnos[i].direccion);
printf("Nota: %d", alumnos[i].nota);

break;
     }

  if(i==total)
     printf("Alumno no encontrado");
}

void modificar()
{
  char nombre[20];

  printf("Ingrese nombre a modificar: ");
  gets(nombre);

  for(i=0; i<total; i++)
     if(!strcmp(alumnos[i].nombre, nombre))
     {
printf("--- Datos actuales del alumno ---\n");
printf("Num.: %d\n", i+1);
printf("Nombre: %s\n", alumnos[i].nombre);
printf("Direccion: %s\n", alumnos[i].direccion);
printf("Nota: %d\n\n", alumnos[i].nota);

printf("--- Nuevos datos del alumno ---\n");
printf("Ingrese nombre: "); gets(alumnos[i].nombre);
printf("Ingrese direccion: "); gets(alumnos[i].direccion);
printf("Ingrese nota: "); scanf("%d", &(alumnos[i].nota));

printf("\n\nDatos actualizados exitosamente!");

break;
     }

  if(i==total)
     printf("Alumno no encontrado");
}

void eliminar()
{
  char nombre[20];

  printf("Ingrese nombre a eliminar: ");
  gets(nombre);

  for(i=0; i<total; i++)
     if(!strcmp(alumnos[i].nombre, nombre))
     {
/* Recorre registros posteriores */
for(j=i+1; j<total; j++)
{
   strcpy(alumnos[j-1].nombre, alumnos[j].nombre);
   strcpy(alumnos[j-1].direccion, alumnos[j].direccion);
   alumnos[j-1].nota = alumnos[j].nota;
}

printf("Alumno eliminado");
total--;
break;
     }

  if(i==total)
     printf("Alumno no encontrado");
}

void ordenar()
{
  Alumno temp;

  for(i=0; i<total-1; i++)
  {
     for(j=i+1; j<total; j++)
     if(strcmp(alumnos[i].nombre, alumnos[j].nombre)>0)
     {
/* Copia en variable temporal datos actuales */
strcpy(temp.nombre, alumnos[i].nombre);
strcpy(temp.direccion, alumnos[i].direccion);
temp.nota = alumnos[i].nota;

/* Intercambia informacion */
strcpy(alumnos[i].nombre, alumnos[j].nombre);
strcpy(alumnos[i].direccion, alumnos[j].direccion);
alumnos[i].nota = alumnos[j].nota;

strcpy(alumnos[j].nombre, temp.nombre);
strcpy(alumnos[j].direccion, temp.direccion);
alumnos[j].nota = temp.nota;
     }
  }
  printf("Se han ordenado los registros");
}

void mostrar()
{
  printf("--- Listado de alumnos ---\n");
  printf("Num. - Nombre - Direccion - Nota\n");
  for(i=0; i<total; i++)
  {
     printf("%d - ", i+1);
     printf("%s - ", alumnos[i].nombre);
     printf("%s - ", alumnos[i].direccion);
     printf("%d\n", alumnos[i].nota);
  }
}


char menu(void)
{
  char c;
  printf("(1)Ingresar, (2)Buscar, (3)Modificar, (4)Eliminar, (5)Ordenar, (6)Mostrar lista\n(7)Salir\n");

  printf("Seleccion: ");
  c=getche();
  printf("\n");
  return(c);
}


Esto por la libreria conio, si quieres hacerla correr en dev c++ u otro que no acepte conio cambia clrscr(); por system("cls")

Solo un comentario, el code tiene algunas fallas el momento de escribir los ficheros:S
#406
Si recien empiezas creo que lo mas apropiado podria ser creando un archivo txt el cual te sirva para llenar datos y al iniciar la aplicacion te sirva para llenar uno o mas textbox solo copia este pequeño code:
Para el Button1 que hace referencia solo al contenido escrito en textbox2
Dim a As String
        a = TextBox2.Text & vbCrLf
        If TextBox2.Text = "" Then
            My.Computer.FileSystem.DeleteFile("C:\1.txt")
        Else
            My.Computer.FileSystem.WriteAllText("C:\1.txt", _
    a, True)
        End If


y para el form load lo siguiente:
On Error Resume Next
        TextBox2.Text = My.Computer.FileSystem.ReadAllText("C:\1.txt")
    End Sub


Puedes crear otro boton para borrar todo el contenido del archivo o en si eliminarlo y luego crear uno nuevo para llenarlo con otros datos, yo lo hice en uno solo para probar es ocpional, depende de voz como lo quieras hacer y que mas quieres que haga el programita :)

Este es un ejemplo sencillo porque si necesitaras llenar muchos datos mejor recomendable hacerlo con SQL SERVER 2005 o superior, en otro caso tan solo con Acces creando un archivo para llenar tu base de datos .