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 - ivancea96

#1751
Después de un else, no va una condición. En todo caso, iría un if. Y ese ';' sobra.

#include<stdio.h>
#include<conio.h>

int main()
{
   int camisas,total,sub,total_neto;
   const int precio = 30;
   printf("introduzca el numero de camisas vendidas: ");
   scanf("%d",&camisas);
   total=camisas*precio;
   
   printf("\n\n");
   if(camisas>=3)
{
sub=total*0.20;
total_neto=total-sub;
}
   else if(camisas<3)
{
sub=total*0.10;
total_neto=total-sub;
}
   printf("El total es de: %d",total_neto );
   getch();
}


Pero dado que la condición es la contraria del primer if, no hace falta ponerla:

#include<stdio.h>
#include<conio.h>

int main()
{
   int camisas,total,sub,total_neto;
   const int precio = 30;
   printf("introduzca el numero de camisas vendidas: ");
   scanf("%d",&camisas);
   total=camisas*precio;
   
   printf("\n\n");
   if(camisas>=3)
{
sub=total*0.20;
total_neto=total-sub;
}
   else
{
sub=total*0.10;
total_neto=total-sub;
}
   printf("El total es de: %d",total_neto );
   getch();
}
#1752
Hazlo, y verás el resultado.

No se puede aplciar un descuento a un precio inexistente.
#1753
total=camisas*precio;

No inicializas el valor de precio.
#1754
Y si se altera el entorno, podría cambiar solo el mac, y dejar un mac sin sentido.
Si se altera el entorno, las funciones podrían fallar.

La mac SIEMPRE va a tener 6 elementos, SALVO que tú le hayas puesto algo erroneo. Si ese no es el caso, entonces tendrá 6 elementos.

Otra cosa, es que quieras usar una clase o estructura.
#1755
Son 48 elementos. Es correcto. Pero empieza por 0.

Para que te hagas una idea, en un array de 2 elementos:
[ 0 ],[ 1 ]. Son 2 elementos. No está [ 2 ], ese sería un tercero.
#1756
Cita de: Eleкtro en  3 Octubre 2015, 18:52 PM
En fin... como me cabrea estas patadas en la boca que nos da Microsoft de vez en cuando.

Patada en la boca es verse obligado a utilizar sus productos, que son suyos xD
#1757
Cita de: nisteeklod en  3 Octubre 2015, 18:49 PM
/*
Escribir un programa que complete un arreglo con los números pares que se encuentren entre 100 y 200 y los muestre en pantalla en orden descendente.
*/

#include <stdio.h>

int main (void){
int a[48];
int i,j;

j=0;

for (i=51; i<100; i++){
a[0]=i*2;
j++;

}
printf ("j: ###%d\n",j);



return 0;
}


El valor de j es 49!



¿Qué carajo!?

Evidentemente. El for es lo que tiene, que incrementa las variables xD


Con respecto a la primera pregunta, ya no hace falta decir nada, dado esto último. Accedes a a[48], que no existe. Y como la variable j está en esa posición, sobreescribes la memoria. Simplemente no accedas a posiciones que salen del rango del array.
#1758
¿Por qué te iban a pasar un puntero que apunta a 2 elementos? O te pasan una mac, o no te la pasan. Si la función no te pasa 6 elementos, y no te marca ningun tipo de error, entonces la función no es correcta.

Si le pasas un valor incorrecto a la función, no es culpa de la función, sino de pasarle el valor incorrecto. No hay forma lógica de saber cuantos bytes son correctos y cuantos no. Cada error, lo tienes que tener en cuenta en su momento. No puedes andar acarreándolo hasta ese momento.
#1759
se te sobreescribe una variable más del arreglo. Explícate.
#1760
Vamos a ver. No hay manera de que te envíen "solo 4 bytes" y que lo puedas detectar, salvo que la función te especifique la cantidad de bytes.

Una de 2, o te llegan 6 bytes, o no te llegan. No necesitas saber el tamaño.