TcolotESAD

Fundamentos de programación en C Buhootecolote

Bienvenido a la casa de los Tecolotes ESAD Ahora UnADM
Si ya eres miembro, entra, te estamos esperando...

Y si no !Que esperas!
Regístrate y forma parte de esta gran familia...
Administrador
TcolotESAD

Fundamentos de programación en C Buhootecolote

Bienvenido a la casa de los Tecolotes ESAD Ahora UnADM
Si ya eres miembro, entra, te estamos esperando...

Y si no !Que esperas!
Regístrate y forma parte de esta gran familia...
Administrador
TcolotESAD
¿Quieres reaccionar a este mensaje? Regístrate en el foro con unos pocos clics o inicia sesión para continuar.


Comunidad independiente de Estudiantes de La Universidad Abierta y a Distancia de México (UnADM)


 
ÍndiceÍndice  PortalPortal  Últimas imágenesÚltimas imágenes  RegistrarseRegistrarse  ConectarseConectarse  
Comunidad de estudiantes de la UnAD (Universidad Abierta y a Distancia de México)
Búsqueda Google
Google
Últimos temas
» Alguien del Foro es Docente en la Unadmexico
Fundamentos de programación en C Emptypor HELENA Dom 26 Abr - 1:02

» Convocatoria 2018-2
Fundamentos de programación en C Emptypor HELENA Dom 29 Mar - 16:39

» Programas desarrollado administracion de producción, auditoria administrativa, canales de venta y desarrollo sustentable
Fundamentos de programación en C Emptypor Gabrielasj Vie 27 Jul - 21:10

» Programas desarrollados de Telemática del 1o. al 9o. Aquí
Fundamentos de programación en C Emptypor tecolotl Mar 20 Jun - 10:26

» Felicidades Tecolotes
Fundamentos de programación en C Emptypor Daniela_ch_a Mar 20 Sep - 10:28

» MICROECONOMIA Unidades 1,2,3
Fundamentos de programación en C Emptypor Cecilia Lun 19 Sep - 23:00

» sobre proyecto de tutores
Fundamentos de programación en C Emptypor HELENA Miér 31 Ago - 21:15

» Proyecto Terminal I y II
Fundamentos de programación en C Emptypor Trinidad Vie 14 Ago - 13:46

» Convocatoria 2016-1
Fundamentos de programación en C Emptypor Trinidad Lun 3 Ago - 10:37

» Exámenes extraordinarios o de recuperación
Fundamentos de programación en C Emptypor HELENA Vie 12 Jun - 14:28

Enlaces directos
Marzo 2024
DomLunMarMiérJueVieSáb
     12
3456789
10111213141516
17181920212223
24252627282930
31      
CalendarioCalendario
Visitas
Fundamentos de programación en C Pageviews=1
Palabras claves
local desarrollados empresas sustentable etica sistema tecnologia informatica TURISTICAS turismo mercadotecnia ambiental programas desarrollo productivo administracion

Comparte

 

 Fundamentos de programación en C

Ver el tema anterior Ver el tema siguiente Ir abajo 
Ir a la página : 1, 2  Siguiente
AutorMensaje
Emmanuel
Webmaster
Webmaster
Emmanuel

Mensajes : 1439

Fundamentos de programación en C Empty
MensajeTema: Fundamentos de programación en C   Fundamentos de programación en C EmptySáb 2 Abr - 22:38

Muchos de nosotros pasamos esta materia con cierta sensación como "de que algo falto", tal vez porque fue nuestro primer acercamiento con la programada y el hecho de entregar las actividades a tiempo nos hacia no asimilar a detalle algunos conceptos basicos y claves.

Es por eso que abro este hilo ya que cuando 2 o mas personas estudian o debaten un tema, es menos tedioso que cuando lo hace uno solo, y esto hace que halla continuidad en el proposito de estudio.

Para iniciar este debate, taller, platica, regularización o como tu gustes y te de la gana llamarlo, he pensado en definir cual sera nuestro libro de texto, hace tiempo di con el en la red y me parecio muy bueno, ademas de que no esta protegido y se puede distribuir libremente con la condición de que no se modifique, el libro en cuestión se llama Fundamentos de programación en C, por Nacho Cabanes y lo podeis descargar aqui:

http://ubuntuone.com/p/kfl/

Es presiso aclarar que tal vez no nos terminemos el librito pero confio en que algo se nos tiene que pegar Razz , asi que si estas interesado en esto te invito a postear, y si no pues creo que por aqui estare unos meses posteando como un P&/%/ loco ¡¡que mas da!! en lo personal me interesa aprender C.

Volver arriba Ir abajo
http://aprendiendognulinux.blogspot.com/
Alesidrosas
Administrador
Administrador
Alesidrosas

Mensajes : 824

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptySáb 2 Abr - 22:43

ok, lo bajo, lo leo, me enredo y te pregunto sale?
Volver arriba Ir abajo
Emmanuel
Webmaster
Webmaster
Emmanuel

Mensajes : 1439

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptySáb 2 Abr - 23:44

Recapitulando conceptos basicos paginas de libro 8 y 10

Texto en azul para diferenciar, tal vez todo te suene muy basico (y lo es), ya que de alguna manera lo vimos en el curso, pero es necesario afirmar los cimientos ya que si no al ver cosas complejas pues no sabemos que hacer.

0.3. Pseudocódigo

A pesar de que los lenguajes de alto nivel se acercan al lenguaje natural, que nosotros empleamos, es habitual no usar ningún lenguaje de programación concreto cuando queremos plantear los pasos necesarios para resolver un problema, sino emplear un lenguaje de programación ficticio, no tan estricto, muchas veces escrito incluso en español. Este lenguaje recibe el nombre de pseudocódigo.

Esa secuencia de pasos para resolver un problema es lo que se conoce como algoritmo (realmente hay alguna condición más, por ejemplo, debe ser un número finito de pasos). Por tanto, un programa de ordenador es un algoritmo expresado en un lenguaje de programación.

Los pasos que seguiremos para crear un programa en C serán:

1. Escribir el programa en lenguaje C (fichero fuente), con cualquier editor de textos.

2. Compilarlo con nuestro compilador. Esto creará un “fichero objeto”, ya convertido a un lenguaje que el ordenador es capaz de entender.

3. Enlazarlo con otros ficheros del compilador, unas bibliotecas auxiliares que incluirán en nuestro programa aquellas posibilidades que hayamos empleado nosotros pero que realmente no sean parte del lenguaje C básico, sino ampliaciones de algún tipo. Esto dará lugar al fichero ejecutable, que ya podremos usar desde MsDos o el sistema operativo que estemos manejando, en nuestro ordenador o en cualquier otro, aunque ese otro ordenador no tenga el compilador que nosotros hemos utilizado.

1.2. Mostrar números enteros en pantalla
Cuando queremos escribir un texto “tal cual”, como en el ejemplo anterior, lo encerramos entre comillas. Pero no siempre querremos escribir textos prefijados. En muchos casos, se tratará de algo que habrá que calcular. El caso más sencillo es el de una operación matemática. En principio, podríamos pensar en intentar algo así (que está mal):

printf(3+4);

En muchos lenguajes de programación esto es perfectamente válido, pero no en C. La función “printf” nos obliga a que lo que escribamos en primer lugar sea un texto, indicado entre comillas. Eso que le indicamos entre comillas es realmente un código de formato. Dentro de ese código de formato podemos tener caracteres especiales, con los que le indicamos dónde y cómo queremos que aparezca un número (u otras cosas). Esto lo veremos con detalle un poco más adelante, pero de momento podemos anticipar que “%d” sirve para decir “quiero que aquí aparezca un número entero”. ¿Qué número? El que le indicamos a continuación, separado por una coma:

printf("%d", 3+4);

Este ejemplo mostraría en pantalla un número entero (%d) que sea el resultado de suma 3 y 4. Podemos escribir entre las comillas más detalles sobre lo que estamos haciendo:

printf("El resultado de sumar 3 y 4 es %d", 3+4);

Ejercicio propuesto: crea un programa que diga el resultado de sumar 118 y 56.


Volver arriba Ir abajo
http://aprendiendognulinux.blogspot.com/
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 0:06

Hola compañeros necesito de su ayuda, estoy un poco desesperada, casi casi ya no quiero acabar con la materia . Necesito colocar un nombre, este es de acuerdo a la seleccion de una estructura selectiva multiple.

if(eleccion='1'){
printf ("CASCO IGA");
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if (eleccion='2'){
printf ("CASCO INFRA");
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if(eleccion=='3'){
printf ("CASCO MSA");
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
El error que existe aqui es que muestra los resultados, exepto el nombre que debe imprimir, imprime solo el primero, si me podrían decir que esta mal, se los agradecería.
Volver arriba Ir abajo
Emmanuel
Webmaster
Webmaster
Emmanuel

Mensajes : 1439

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 0:10

Bueno tal vez sea un poco estupida mi respuesta, pero a ojo de buen cubero chapiz ¿no seria mejor haber usado swich-case?
Volver arriba Ir abajo
http://aprendiendognulinux.blogspot.com/
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 0:12

Pregunta se pueden usar mas de 2 switch case, por que mas arriba de mi codigo ocupa uno.
Volver arriba Ir abajo
Emmanuel
Webmaster
Webmaster
Emmanuel

Mensajes : 1439

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 0:15

¿pero ya esta cerrado el primero? si ya esta cerrado creo que no halla nada que impida el que metas otro.
Volver arriba Ir abajo
http://aprendiendognulinux.blogspot.com/
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 0:21

Haber mira se supone que este conjunto de instrucciones, pertenece a ese case este es mi no. 4 y aún no esta cerrado, lo que pretendo es hacer lo de los perros el con un numero de aprobacion, mostrar la marca, precio, cantidad y total.
Volver arriba Ir abajo
Emmanuel
Webmaster
Webmaster
Emmanuel

Mensajes : 1439

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 0:29

En teoria si se puede usar un swich-case dentro de otro swich-case ¿tal vez asi?


switch (
condición 1) {

case
"1":

switch (
condición 2) {

case
"1":

printf(" la primera condición del segundo case");;

break;

case
"2":

printf(" segunda condición del segundo case");

break;

}

break;

case
"2":

printf( "segunda condicion del primer case");

break;

}

Volver arriba Ir abajo
http://aprendiendognulinux.blogspot.com/
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 0:47

No pues no queda tampoco, seguire checando, gracias emmanuel.
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 13:20

Asi de primera veo este error,  en las condicionales todas deben tener esto ==  no esto =
ejemplo :
if(eleccion='1'){/*esto esta mal*/
if(eleccion=='1'){/*asi esta bien*/
Volver arriba Ir abajo
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 21:49

Hola uno, lo cambie de ese modo y no me muestra nada de datos, de todos modos muchas gracias.
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 21:55

a ver si entiendo....
usted ingresa un numero del 1 al 3 y dependiendo de esa opción se le muestra la informacion de cada casco? si ese es el caso, entonces..

si usted lee un numero entero, solo quite las comillas simples en la comparación

cambie usted lo siguiente:
if(eleccion=='1')

a
if(eleccion==1)
Volver arriba Ir abajo
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 22:06

Gracias Latsirc, pero me resulta igual, solamente como lo tengo si me muestra lo que solicita, excepto mis leyendas.
case 4:
printf("---------------------------");
printf("\n\nNumero de Aprobacion:\t");
scanf("%d",&aprobacion);
while(aprobacion>=20 ||aprobacion <0){
printf("El numero de aprobacion no es valido, ingrese nuevamente otro numero:");
scanf("%d",&aprobacion);
}
if(eleccion='1'){
printf ("CASCO IGA%s",casco[aprobacion].iga);
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if (eleccion='2'){
printf ("CASCO INFRA%s",casco[aprobacion].infra);
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if (eleccion=='3'){
printf ("CASCO MSA%s",casco[aprobacion].msa);
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
break;

Haber si me puden ayudar, esta es la parte que me marca ese error, se supone que de acuerdo a mi numero de aporbacion, muestra los datos de supone que las sentencias if son para decir que si la opcion 1 pertenece a ese numero de aporbacion debe mostrar tal nombre, pero no queda y esto me ha desesperado llevo como seis días haciendo esto poco a poco he avanzado pero sigue sin quedar.
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 23:06

hola, eleccion  es de tipo int?? puedes poner la parte del codigo de como creas tu estructura struct y le asignas valores? 
Volver arriba Ir abajo
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 23:13

struct casco{
int cantidad;
int precio;
int importe;
char iga[12];
char infra[12];
char msa[12];
float descuentoiga,descuentoinfra,descuentomsa;
}casco[20];

int s=0,eleccion,aprobacion;
float total;
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 23:17

y la parte donde le das valores a tu estructura?
Volver arriba Ir abajo
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyDom 3 Abr - 23:28

do{
printf("\n***************************************************************");
printf("\n MENU DE VENTAS DE SEGURIDAD INDUSTRIAL SYMSSA");
printf("\n\n1.-Casco Iga\t");
printf("\n\n2.-Casco Infra\t");
printf("\n\n3.-Casco Msa\t");
printf("\n\n4.-Busqueda de ventas con la aprobacion");
printf("\n\n5.-Salir");
printf("\n***************************************************************");
printf("\n\nSelecciona una de las opciones anteriores:\t");
scanf("%d",&eleccion);
switch(eleccion){
case 1:
if(s>=20)
printf("\nNo puede ingresar mas ventas\n");
else{
printf("\n-------------------------------------------------------");
printf("\n\n\tCASCO IGA");
gets( casco[s].iga);
printf("\n-------------------------------------------------------");
printf( "Aprobacion:%.2d\n", s);
printf("\n\nDame la cantidad a vender:\t");
scanf("%d",&casco[s].cantidad);
printf("\n\nDame el precio:$\t");
scanf("%d",&casco[s].precio);
casco[s].importe= casco[s].precio*casco[s].cantidad;
printf("\n\nRealizar un 20 por ciento de descuento.");
casco[s].descuentoiga=casco[s].importe-casco[s].importe*.20;
total=casco[s].descuentoiga;
printf("\n\nLa cantidad a pagar es:%.2f",total);
s++;
{
break;
case 2:
printf("\n-------------------------------------------------------");
printf( "\n\n\tCASCO INFRA");
gets( casco[s].infra);
printf("\n-------------------------------------------------------");
printf( "Aprobacion:%.2d\n", s);
printf("\n\nDame la cantidad a vender:\t");
scanf("%d",&casco[s].cantidad);
printf("\n\nDame el precio:$\t");
scanf("%d",&casco[s].precio);
casco[s].importe=casco[s].cantidad*casco[s].precio;
printf("\n\nRealizar un 30 por ciento de descuento.");
casco[s].descuentoinfra=casco[s].importe-casco[s].importe*.30;
total=casco[s].descuentoinfra;
printf("\n\nLa cantidad a pagar es:%.2f",total);
s++;
}
break;
case 3:
printf("\n---------------------------------------------------");
printf("\n\n\tCASCO MSA");
gets(casco[s].msa);
printf("\n---------------------------------------------------");
printf( "Aprobacion:%.2d\n", s);
printf("\n\nDame la cantidad a vender:\t");
scanf("%d",&casco[s].cantidad);
printf("\n\nDame el precio:$\t");
scanf("%d",&casco[s].precio);
casco[s].importe=casco[s].cantidad*casco[s].precio;
printf("\n\nRealizar un 40 por ciento de descuento:");
casco[s].descuentomsa=casco[s].importe-casco[s].importe*.40;
total=casco[s].descuentomsa;
printf("\n\nLa cantidad a pagar es:%.2f",total);
s++;
}
break;
case 4:
printf("---------------------------");
printf("\n\nNumero de Aprobacion:\t");
scanf("%d",&aprobacion);
while(aprobacion>=20 ||aprobacion <0){
printf("El numero de aprobacion no es valido, ingrese nuevamente otro numero:");
scanf("%d",&aprobacion);
}
if(eleccion='1'){
printf ("CASCO IGA%s",casco[aprobacion].iga);
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if (eleccion='2'){
printf ("CASCO INFRA%s",casco[aprobacion].infra);
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if (eleccion='3'){
printf ("CASCO MSA%s",casco[aprobacion].msa);
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
break;
case 5:
break;
default:
printf( "Opcion no valida\n");
}
}while (eleccion!=5);
}
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyLun 4 Abr - 0:19

en este codigo creo que sucede lo siguiente:

si yo tecleo el LA OPCION 1, la variable eleccion=1
entonces, el programa ejecuta lo que este en el caso 1
"lee los datos del casco tipo 1"

si yo tecleo el LA OPCION 2, la variable eleccion=2
entonces, el programa ejecuta lo que este en el caso 2
"lee los cascos del tipo 2"
si yo tecleo el LA OPCION 3, la variable eleccion=3
entonces, el programa ejecuta lo que este en el caso 3
"lee los cascos del tipo 3"

pero, si yo tecleo el LA OPCION 4,(busqueda de los datos del casco por el tipo) la variable eleccion=4 (porque yo teclee la opción 4)
entonces, el programa ejecuta lo que este en el caso 4
entonces, llega el programa a las comparaciones, pero estas nunca van a cumplirse porque el valor de la variable eleccion es igual a 4
no a "1" ni a "2" ni a "3";

entonces, como ninguna de las comparaciones es verdadera, no imprime la información.
Volver arriba Ir abajo
Emmanuel
Webmaster
Webmaster
Emmanuel

Mensajes : 1439

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyLun 4 Abr - 0:24

Lo que le comento que una vez en el case n: hay que definir de nuevo lasinstrucciones el switch(eleccion){ solo seria valido para ubicase en el case: a trabajar pero perderia ingerencia en las instrucciones del mismo

case 4:
printf("---------------------------");
printf("\n\nNumero de Aprobacion:\t");
scanf("%d",&aprobacion);
while(aprobacion>=20 ||aprobacion <0){
printf("El numero de aprobacion no es valido, ingrese nuevamente otro numero:");
scanf("%d",&aprobacion);
}
if(eleccion='1'){
printf ("CASCO IGA%s",casco[aprobacion].iga);
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
Volver arriba Ir abajo
http://aprendiendognulinux.blogspot.com/
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyLun 4 Abr - 0:28

Es cierto lo que comenta LATSIRC para la condicional usas un valor(eleccion) de forma incorrecta.


Ademas, esto que se supone debe imprimir en pantalla ?? printf ("CASCO INFRA%s",casco[aprobacion].infra);,,es decir que valor se supone hay guardado aqui cuando quieres imprimir  casco[aprobacion].infra??
Volver arriba Ir abajo
chapis
Buhito
Buhito
chapis

Mensajes : 372

Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyLun 4 Abr - 0:39

De hecho ningun valor, pero aún quitandolo sigue igual, lo que quiero hacer es lo mismo que los perros que cuando tu busques una clave te de la marca, lo condicione por que no me salian las marcas se supone que si resultaba que mi aprobacion era una,debe checar a que tipo de marca corresponde o no se si existe alguna otra forma de colocarla.
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyLun 4 Abr - 0:43

Se puede hacer lo que quieres de otra forma ahora te paso el codigo
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyLun 4 Abr - 0:57

Modifique tu estructura ahora agregue una variable  int tipo;/*aqui guarda 1 si es Iga, 2 si es Infra, 3 si es Msa*/, este valor se asigna cada que guardas un nuevo casco, y al final se usa para la condicional que imprime datos como puedes ver en el siguiente codigo:(por lo que veo se puede optimizar tu codigo, pero conque funcione como quieres basta por ahora creo)



struct casco{
int cantidad;
int precio;
int importe;
char iga[12];
char infra[12];
char msa[12];
float descuentoiga,descuentoinfra,descuentomsa;
int tipo;
}casco[20];

int s=0,eleccion,aprobacion;
float total;
do{
printf("\n***************************************************************");
printf("\n MENU DE VENTAS DE SEGURIDAD INDUSTRIAL SYMSSA");
printf("\n\n1.-Casco Iga\t");
printf("\n\n2.-Casco Infra\t");
printf("\n\n3.-Casco Msa\t");
printf("\n\n4.-Busqueda de ventas con la aprobacion");
printf("\n\n5.-Salir");
printf("\n***************************************************************");
printf("\n\nSelecciona una de las opciones anteriores:\t");
scanf("%d",&eleccion);
switch(eleccion){
case 1:
if(s>=20)
printf("\nNo puede ingresar mas ventas\n");
else{
printf("\n-------------------------------------------------------");
printf("\n\n\tCASCO IGA");
casco[s].tipo=1;
printf("\n-------------------------------------------------------");
printf( "Aprobacion:%.2d\n", s);
printf("\n\nDame la cantidad a vender:\t");
scanf("%d",&casco[s].cantidad);
printf("\n\nDame el precio:$\t");
scanf("%d",&casco[s].precio);
casco[s].importe= casco[s].precio*casco[s].cantidad;
printf("\n\nRealizar un 20 por ciento de descuento.");
casco[s].descuentoiga=casco[s].importe-casco[s].importe*.20;
total=casco[s].descuentoiga;
printf("\n\nLa cantidad a pagar es:%.2f",total);
s++;
{
break;
case 2:
printf("\n-------------------------------------------------------");
printf( "\n\n\tCASCO INFRA");
casco[s].tipo=2;
printf("\n-------------------------------------------------------");
printf( "Aprobacion:%.2d\n", s);
printf("\n\nDame la cantidad a vender:\t");
scanf("%d",&casco[s].cantidad);
printf("\n\nDame el precio:$\t");
scanf("%d",&casco[s].precio);
casco[s].importe=casco[s].cantidad*casco[s].precio;
printf("\n\nRealizar un 30 por ciento de descuento.");
casco[s].descuentoinfra=casco[s].importe-casco[s].importe*.30;
total=casco[s].descuentoinfra;
printf("\n\nLa cantidad a pagar es:%.2f",total);
s++;
}
break;
case 3:
printf("\n---------------------------------------------------");
printf("\n\n\tCASCO MSA");
casco[s].tipo=3;
printf("\n---------------------------------------------------");
printf( "Aprobacion:%.2d\n", s);
printf("\n\nDame la cantidad a vender:\t");
scanf("%d",&casco[s].cantidad);
printf("\n\nDame el precio:$\t");
scanf("%d",&casco[s].precio);
casco[s].importe=casco[s].cantidad*casco[s].precio;
printf("\n\nRealizar un 40 por ciento de descuento:");
casco[s].descuentomsa=casco[s].importe-casco[s].importe*.40;
total=casco[s].descuentomsa;
printf("\n\nLa cantidad a pagar es:%.2f",total);
s++;
}
break;
case 4:
printf("---------------------------");
printf("\n\nNumero de Aprobacion:\t");
scanf("%d",&aprobacion);
while(aprobacion>=20 ||aprobacion <0){
printf("El numero de aprobacion no es valido, ingrese nuevamente otro numero:");
scanf("%d",&aprobacion);
}
if(casco[aprobacion].tipo==1){
printf ("CASCO IGA");
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if (casco[aprobacion].tipo==2){
printf ("CASCO INFRA");
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
else if (casco[aprobacion].tipo==3){
printf ("CASCO MSA");
printf("\nCantidad:%d\n",casco[aprobacion].cantidad);
printf("\nPrecio:%d\n",casco[aprobacion].precio);
printf("\nCantidad a pagar:%.2f\n",total);
}
break;
case 5:
break;
default:
printf( "Opcion no valida\n");
}
}while (eleccion!=5);
Volver arriba Ir abajo
Invitado
Invitado



Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C EmptyLun 4 Abr - 1:03

ya corrio usted en c ese codigo sr. uno?
Volver arriba Ir abajo
Contenido patrocinado




Fundamentos de programación en C Empty
MensajeTema: Re: Fundamentos de programación en C   Fundamentos de programación en C Empty

Volver arriba Ir abajo
 

Fundamentos de programación en C

Ver el tema anterior Ver el tema siguiente Volver arriba 
Página 1 de 2.Ir a la página : 1, 2  Siguiente

 Temas similares

-
» Ya estan las calificaciones de Fundamentos de Programación
» Unidad 2 Fundamentos de Administración
» FUNDAMENTOS DE MERCADOTECNIA TERCER CUATRIMESTRE
» planeación - fundamentos de administración
» Fundamentos de investigación Programa desarrollado

Permisos de este foro:No puedes responder a temas en este foro.
TcolotESAD :: Ingenierias UnADM :: Desarrollo de Software-