[ Foro de C++ ]

ayuda,coregir un codigo de c++

09-Feb-2023 02:26
Invitado (ribaldo)
0 Respuestas

#include <stdio.h>
#include <cstdio>
#include <cstring>
#define dim 10
#define n 4
using namespace std;

struct alumno{

   long int cedula;
   char nombre[dim];
   int edad;
   double grade;

};//es solo el dienio
struct materia{
   int codigo;
   char nombre[dim];
   float notas[n];// areglo de 4 posiciones
                 //tres primeras notas y promedio
};
struct matricula{
   int codigo;
   alumno dat_alumno;
   materia dat_materia;
   double valor;//aregle
};

matricula ingreso(matricula x){

   x.codigo=345;//deben ser generados
   printf("\ningrese su cedula");
   scanf("%ld",&x.dat_alumno.cedula);
   fflush(stdin);
   printf("\ningrese su nombre");
   gets(x.dat_alumno.nombre);
   printf("\ningrese edad");
   scanf("%d",&x.dat_alumno.edad);
   x.dat_materia.codigo=754;
   printf("\ningrese la materia");
   gets(x.dat_materia.nombre);
   for(int i=0;i<n-1;i++)
   {
        printf("ingrese la nota[%d",i+1);
        printf("\n");
        scanf("%f",&x.dat_materia.notas[i]);

   }
   x.valor=25*6;
   return (x);

}
void imprimir(matricula x){
   printf("\ncodigo de matricula:&d",x.codigo);
   printf("\ncedula:%ld",x.dat_alumno.cedula);
   printf("\nnombre:%s",x.dat_alumno.nombre);
   printf("\nedad:%d",x.dat_alumno.edad);
   printf("\ncodigo de la materia:%d",x.dat_materia.codigo);
   printf("\nnombre materia:%s",x.dat_materia.nombre);
   for(int i=0;i<n-1;i++)
         printf("\nnota[%d]:,%f",i+1,x.dat_materia.notas[i]);
         printf("\n");
    printf("\npromedio:%f",x.dat_materia.notas[3]);
    printf("\n");
    printf("\nvalor a pagarse:%lf",x.valor);
}
void promedio(float x[n]){
   printf("\n");
   x[3]=((x[0]+x[1]+x[2]/3));

{

}


}
int main()
{
   matricula e;//variable tipo matricula
   printf("\n");

  //ingreso de datos
   e=ingreso(e);//matricula
   printf("\n");
   promedio(e.dat_materia.notas);//se lleva el arreglonota
   printf("\n");
   imprimir(e);

}
long int ingreso(long int cedula){//??
   printf("Ingrese su cedula: ");
   scanf("%ld",&cedula);//171616161
   return(cedula);
}
int validar_cedula(long int cedula){
   int A[dim],i,res,sumapares=0,sumaimpares=0,sumatotal,mul;
   long int coc;
   i=9;
   do{
       coc=cedula/10;
       res=cedula%10;
       A[i]=res;
       i--;
       cedula=coc;
   }while(coc!=0);

   for(int j=0;j<dim;j+=2){

       mul=A[j]*2;
       if(mul>9)
           mul-=9;
       sumapares+=mul;

   }
   for(int j=1;j<dim-1;j+=2)
       sumaimpares+=A[j];

   sumatotal=sumapares+sumaimpares;
   res=10-(sumatotal%10);
   if (res==10)
       res=0;
   if(res==A[9])
       return(1);
   else
       return(0);


}
void imprimir(int v){

   if (v==1)
       printf("Cedula valida");
   else
       printf("Cedula no valida");

}

int main()
{
   long int c;
   int z;
   c=ingreso(c);
   z=validar_cedula(c);
   imprimir(z);


const char *validProvinces[] = {
  "",
  "azuay",
  "bolivar",
  "cañar",
  "carchi",
  "chimborazo",
  "cotopaxi",
  "el oro",
  "esmeraldas",
  "galapagos",
  "guayas",
  "imbabura",
  "loja",
  "los rios",
  "manabi",
  "morona santiago",
  "napo",
  "orellana",
  "pastaza",
  "prichincha",
  "santa elena",
  "santo domingo",
  "sucumbios",
  "tungurahua",
  "zamora chimchipe",
};
const int numValidProvinces = sizeof(validProvinces) / sizeof(validProvinces[0]);

void validateProvince(const char *province) {
  for (int i = 0; i < numValidProvinces; i++) {
     if (strcmp(province, validProvinces[i]) == 0) {
        return true;
     }
  }
  return false;
}

int main() {
  char province[20];
  printf("Enter province: ");
  scanf("%s", province);

  if (validateProvince(province)) {
     printf("Valid province\n");
  } else
     printf("Invalid province\n");
     {
  }
  int main() {
  double grade;
  printf("Enter a grade: ");
  scanf("%lf", &grade);

  if (grade >= 0 && grade <= 20) {
     printf("Valid grade\n");
  } else {
     printf("Invalid grade\n");
  }

  return 0;
}




(No se puede continuar esta discusión porque tiene más de dos meses de antigüedad. Si tienes dudas parecidas, abre un nuevo hilo.)