Comunidad de diseño web y desarrollo en internet online

ayuda con codigos en c++

Citar            
MensajeEscrito el 13 May 2011 07:56 am
hola de nuevo

tengo unos problemas con ciertos progrmas ke estoy haciendo y tengo pequeñas fallas

espero que me puedan corregir

#include <stdio.h>
#include <conio.h>
/* lee una serie de números hasta que se
introduzca un número inferior a 50. Muestra cuántos números se leyeron*/
main(){
//clrscr();
int cont=0;
float nume=50;

while(nume>=50){
printf("Ingrewse un numero");
scanf("%f",nume);
cont=cont++
}//aqui me marca el error que tiene que ver con el main
}
printf("La cantidad de numeros fue %d ",cont);
return 0;
}


este es otro
lo que hace es /*Escribir programa para leer una calificación y escribir los
siguientes mensajes según sea el caso:
a) Si se introduce una “A” escribir “Calificación 10”
b) Al introducir una “B” escribir “Calificación 9”
c) Si se introduce una “C” escribir “Calificación 8”
d) Si se introduce una “D” escribir “Calificación 7”
e) Al introducir una “E” escribir “Calificación 6”
f) Cualquier otra letra escribir “Reprobado” */


int main (void){
//clrscr();


char cal[2];
printf("Introdusca una calificaion numerica");
scanf("%c",&cal);

switch (cal)
{
case '1':
cout cal=A printf("10");
break;
case '2':
cout cal=B printf("9");
break;
case '3':
cout cal=C printf("8");
break;
case '4':
cout cal=B printf("7");
break;
case '5':
cout cal=B printf("6");
break;
otherwise printf("Reprobado");
brak;
}

leer la descripción de un artículo, la cantidad de artículos comprados, el precio del artículo (con el iva incluído del 16%), calcular el pago total, el iva desglosado y el subtotal. Mostrar los resultados en el orden subtotal, iva y total, únicamente cuando la cantidad comprada sea mayor a 15 y el total sobrepase los $500.00.
#include<stdio.h>
#include<conio.h>
main()
{
clrscr();
float precioneto,precioiva,precioproducto, subTotal,total, iva,cant;
char Nomproducto[20];
printf("Cantidad de productos que va ingresar");
scanf("%s",cant);
printf("Dame el nombre del producto: ");
scanf("%s",&Nomproducto);


printf("Introduce el precio del producto sin iva: ");
scanf("%f",&precioproducto);

iva=precioproducto*0.16;
total=precioiva/1.16*cant;
iva=total-subTotal;

precioneto=precioproducto+iva;
/*calcula todo lo que no se es como hcaer que me muestre los resultados segun vi ke se poniam de esta manera*/
printf("El nombre del producto es: %s ",Nomproducto);

printf("El sub total es %.1f",subTotal);
printf("El I.V.A ES %.2f",iva);
/printf("El Total es %.3f",total);
getche();
return(0);
}

programa para calcular y mostrar el número de veces que se introdujo el número 3 (sólo el 3, no el 33, ni el 333, ni el 435, por ejemplo) de una serie de números enteros positivos; el proceso de lectura de datos termina cuando se introduzca un número negativo.

#include<stdio.h>
#include<conio.h>
/*en este me falla el main no se por que*/
main(){

int n=1, i=0, num=0;
while(n>0){
printf("introdusca un numero: ")
scanf("%d",num);
if(num==3){
i++;
else
if(num>=0){
n=1:
else
n=0:
}
}
}
printf("El 3 se introdujo %d",i, "veces");
}

espero y les suplico que me puedan ayudar

Por Tyreal

3 de clabLevel



Genero:Masculino  

ESTUDIANTE DE SITEMAS

firefox
Citar            
MensajeEscrito el 14 May 2011 12:08 am
Saludos, primero te sugiero seas más ordenado cuando escribas, un poco de ortografía y signos de puntuación ayudan a enterderte mejor, y también para que tu código se lea mejor y sea más fácil ayudarte están las etiquetas "<code></code>". Tabular también ayuda a descubrir errores y se ve mejor.

Te ayudaré con el primer programa que tienes, por lo que pude ver tienes errores de sintaxis, corchetes y un poco de lógica, revisa bien tus programas.
Tu código, dónde remarco tus errores:

Código C++ :

#include <stdio.h> 
#include <conio.h> 
main(){ 
   //clrscr(); 
   int cont=0; 
   float nume=50; //no hay necesidad de esto, debes hacer un DO WHILE para garantizar al menos una entrada al ciclo en lugar de usar el WHILE.

   while(nume>=50){ 
         printf("Ingrewse un numero"); //Ingrese
         scanf("%f",nume); 
         cont=cont++  //No has puesto el ";", además con "cont++;" basta.
        //Tienes también un error de lógica, tienes que ponerle un if que verifique que
           número si es mayor o igual a 50, porque sino hará un incremento del contador extra.
      }
   } //Este corchete sobra.
   printf("La cantidad de numeros fue %d ",cont); 
   return 0; 
} 


Código que te he ayudado, uso cout y cin porque me parecen más comodos, también te hago sugerencias:

Código C++ :

#include <stdio.h>
#include <conio.h>
#include<IOSTREAM.H>//Para el cin y el cout

main(){
   int cont=0;
   float nume;
//Mediante el DO WHILE se garantiza que entre al menos una vez.
   do{
      cout<<"Ingrese un numero";
      cin>>nume;
      if(nume>=50){
         cont++;//Verificar si en verdad el numero es >=50 para incrementar el contador.
      }
      }while(nume>=50);

   cout<<"La cantidad de numeros fue "<<cont;
   getch();//Pausa para ver el resultado.
   return 0;
}

Por nbreath

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 14 May 2011 07:59 am
grasias amigo

los del iva ya los resolvi y asi quedaron
clrscr();
float precioiva, subTotal, total, iva;
int cant;
char Nomproducto[20];

printf("Dame el nombre del producto: ");
scanf("%s",&Nomproducto);
printf("Cantidad de productos que va ingresar");
scanf("%s",&cant);
printf("Introduce el precio del producto con iva: ");
scanf("%f",&precioiva);

total=cant*precioiva;
subTotal=total/1.16;
iva=total-subTotal;

printf("\nEl nombre del producto es: %s ",Nomproducto);
printf("\nEl sub total es %f",subTotal);
printf("\nEl I.V.A ES %f",iva);
printf("\nEl Total es %f",total);
getch();
return(0);
}
para la condicional solo pongo esta instruccion
if(cant>50){
if(total>500){

el del case y switch todavia no logro resolverlo al igual el de solo meter el numero 3 es mas error de sintaxis que de logica, pero ya lo hice de nuevo y salio peor

Por Tyreal

3 de clabLevel



Genero:Masculino  

ESTUDIANTE DE SITEMAS

firefox
Citar            
MensajeEscrito el 14 May 2011 03:19 pm


nbreath escribió:

Saludos, primero te sugiero seas más ordenado cuando escribas, un poco de ortografía y signos de puntuación ayudan a enterderte mejor, y también para que tu código se lea mejor y sea más fácil ayudarte están las etiquetas "<code></code>". Tabular también ayuda a descubrir errores y se ve mejor.

Por nbreath

23 de clabLevel



Genero:Masculino  

chrome
Citar            
MensajeEscrito el 16 May 2011 06:05 pm
Hola Tyreal!!

Bueno con respecto a lo que preguntas. Este es el código del primer problema corregido. Yo lo probe desde linux y lo compile con g++

Código C++ :

#include <iostream> 
 
using std::cout; 
using std::cin;
using std::endl;

main(void){ 
   int cont = 0; 
   float nume; 
    
   do { 
      cout << "Ingrese un numero: "; 
      cin >> nume; 
      cont++; 
   } while(nume >= 50); 
 
   cout<<"La cantidad de numeros fue "<< cont << endl;  
} 
Explicación: Primero ¿por qué difiere del código de nbreath?. Bueno yo lo realice en C++. En C++ no existe por defecto la librería conio.h. Tampoco utilicé la librería stdio.h. esa librería se utiliza para la entrada/salida de información lo cuál para este programa es suficiente con iostream . iostream es una librería diseñada para el manejo de flujo de datos de entrada y salida. Como vamos a utilizar esa librería necesitamos definir en C++ los miembros (cin, cout y endl para este caso). Yo defini solo los miembro que iba a utilizar para no hacer que el compilador cargue todos los identificadores ya que no se van a utilizar. Para ello se utiliza la sintaxis:

Código C++ :

using nombre_de_namespace::miembro
Si deseara cargar todos los namespaces utilizaría la siguiente sintaxis:

Código C++ :

using namespace std;
También utilice main(void) para no tener que retornar nada.

Con respecto a tu segundo problema esta es la solución que te propongo:

Código C++ :

#include <iostream>
#include <cstdlib>

using std::cout;  
using std::cin;
using std::endl;

#define limpiar system("clear"); //Solo funciona en linux y requiere de la librería cstdlib

main(void){
   limpiar;
   
   //definición de variables
   char $letra;
   
   
   cout << "Introduzca un calificación en letras mayúsculas: ";
   cin >> $letra;
   
   switch($letra){
      case 'A': cout << "(A) La calificación es de 10" << endl; break;
      case 'B': cout << "(B) La calificación es de 9" << endl; break;
      case 'C': cout << "(C) La calificación es de 8" << endl; break;
      case 'D': cout << "(D) La calificación es de 7" << endl; break;
      case 'E': cout << "(E) La calificación es de 6" << endl; break;
      default: cout << "Reprobado" << endl; break;
   }
}
Explicación: En este programa utilice la siguiente línea:

Código C++ :

#define limpiar system("clear")
la cual funciona de la siguiente manera. #define en este caso me sirve para crear mi propia palabra reservada (Esto en términos mundanos) Para este caso cree una palabra reservada llamada limpiar luego utilice la función system() la cual esta prensente en la librería cstdlib la cuál es una librería utilitaria. Con system() lo que hice fue mandar una intrucción directamente al shell. en el caso de ubuntu (la versión de linux bajo la cuál hice las pruebas) su shell es bash aún cuando se puede utilizar otro tipo de shell. Por lo cual la función para limpiar pantalla es clear. En conclusión dicha linea me sirve para limpiar la pantalla. Para poder utilizarla solo se requiere la instrucción limpiar;

Bueno ya he gastado mucho tiempo ayudandote con tus programas. Te recomiendo el libro Como programar C++ de Deitel y Deitel y que repases todos tus conceptos ya que lo que observe por encima de tu código es que lo estas escribiendo en C , no en C++. por eso muchas cosas pueden estar fallando. Además de un sin fin de errores de código. espero otra persona se anime a ayudarte con los otros programas que posteaste. :)

Por esutoraiki

Claber

548 de clabLevel

4 tutoriales

Genero:Masculino  

Aplicaciones para Web

opera

 

Cristalab BabyBlue v4 + V4 © 2011 Cristalab
Powered by ClabEngines v4, HTML5, love and ponies.