Você está na página 1de 57

Resolucion de ejercicios de C++: Alternativas:

41) Hacer un programa en c++ que calcule la suma de los cuadrados y


cubos de los N primeros nmeros naturales.

Posted by luis pinto muoz on 4:55. Bucles - No comments

Hola esta vez lograremos hacer hacer que imprima los


primeros numeros que ingresemos por pantalla
iniciamos con un contador hacemos un bucle que nos ayuda en
mucho
while para hacer la coparacion y y listo Algo facill :P

Algoritmo
Inicio{escribir la tabla de cuadrados y cubos de los N primeros
enteros}
{Leer nmero de elementos}
Leer N
{Escribir nmeros, cuadrados y cubos}
k=0
hacer
k=k+1

cuadrado=numero*numero
cubo=cuadrado*numero
escribir cuadrado, cubo
mientras(k<12)
Fin
Codificacin C#
static void Main(string[] args)
{
int c,numero,cuadrado,cubo;
//inicialiazamos el contandor
c = 0;
//ingresamos el numero
Console.Write("Ingresa Nmero:");
numero = int.Parse(Console.ReadLine());
do
{
c++;
cuadrado = c*c;
cubo = cuadrado * c;
Console.WriteLine("Numero {0} ,c);
Console.WriteLine("el cuadrado es :{0}", cuadrado);
Console.WriteLine("el cubo es :{0}", cubo);
} while (c < numero);
Console.Read();
}
Otra posible solucin es de :

Suma de los cuadrados de los N primeros


nmeros naturales
Publicado el 26 noviembre, 2009por programacion1z

Ulises Prez
/* Programa que calcula la suma de los
cuadrados de los n primeros nmeros, 26-11-2009 */

#include <stdio.h>
#include <stdlib.h>
#define n 5
int main()
{
float i,suma;
suma=0;
i=1;
for (i=1; i<=n ;i++)
{
suma=suma+(i*i);
}
printf ("n la suma: %d n", suma);
system("PAUSE");
return 0;
}

Ayuda para codigo de c++?


Tengo que calcular la suma de los cuadrados de los primeros 50 numeros naturales
pero cuando lo ejecuto deberia salir como resultado 42925 y en me sale es 5000.
#include <iostream.h>

main()
{
int x=1;
int r1,r2,r3;
cout<<"Esta es la suma de los cuadrados de los primeros 50 numeros naturales\n\n";

while(x<=50)
{
r1=x*x;
cout<<"("<<x<<"x"<<x<<")+";
x++;
}
r2=r1+r1;
cout<<"\n\nEl resultado es:"<<r2<<"\n\n";
system("pause");
return 0;
}
Seguir

2 respuestas
Notificar un abuso

Respuestas

Mejor respuesta: te sale mal porque:


1. utiliza tipo de variables que soporten cantidades mas grandes, como "double" o
"long int" o "long long int" pues solo "int" no soportar el numero...
2. dentro de tu" while" lo nico que estas haciendo es mostrar el cuadrado de cada
numero natural, pero en ningn lado estas guardando la suma de los cuadrados que
vas calculando con la variable "r1".
3.la variable "r2" lo unico que hace es sumar dos veces el cuadrado de 50 que es el
ultimo numero calculado dentro del while y que ya dejo de hacer iteraciones... y por
eso te da 5000, pues "r1" termina valeindo 2500 (que es 50*50) ... y despus solo lo
sumas dos veces.
4. te corrijo tu codigo de la siguiente manera:
r2=0;// debes inicializar la variable "r2" en cero para descartar errores de asignacin.
while (x<=50)
{
r1=x*x;

cout<<"("<<x<<"x"<<x<<")+";
x++;
r2=r2+r1; //esta linea va guardando la suma de los cuadrados en cada iteracin,
//y esta dentro del "while".
}
cout<<r2; // al final solo muestra r2 fuera del "while" y te dar el resultado.
DagloX hace 4 aos
0
Votar a favor

0
Votar en contra
Comentario
Notificar un abuso

para el resultado puedes usar una variable que sea long int ya que la variable int tiene
un limite de -32768 a 32767

43)Sol
Dado un rango numrico entero positivo a y b , obtener la suma y la
cantidad de los nmeros pares, impares y mltiplos de 3.

Sol:
Ejercicio 17
Introducir un nmero por teclado. Que nos diga si es par o impar.
package edu.upe.practica.ejercicios;

public class Ejercicios17

{
public static void main(String[] args)
{

int n=Consola.leerentero();

if ((n%2)==0)
{
System.out.print(El numero es par);
}
else
if ((n%2)!=0)
{
System.out.print(El numero es impar);
}
}
}
Ejercicio 18
Imprimir y contar los mltiplos de 3 desde la unidad hasta un nmero que introducimos por
teclado
package upe.practica.ejercicios;
public class Ejercicio18
{
public static void main(String[] args)
{
int n=0;
int c=0;

int m3=0;
int c3=0;
System.out.println(Ingrese el valor: );
n=Consola.leerentero();
while (c<=n)
{
c++;
if (c%3==0)
{
c3++;
m3=c;
System.out.println(: +m3);
}
}
System.out.println(La cantidad de M3 es: +c3);
}

}
Ejercicio 19
Hacer un algoritmo que imprima los nmeros del 1 al 100 .que calcule la suma de todos los
nmeros pares por un lado y otro la de todos los impares.
package upe.practica.ejercicios;
public class Ejercicio19 {

public static void main(String[] args) {


int a=0;
int b=0;
int c=1;

while (c<=100)
{
System.out.print(,+c);
if ((c%2)==0){
a=a+c;
}
else
if ((c%2)!=0){
b=b+c;
}
c++;
}
System.out.println();
System.out.println(La suma de los numeros pares es : +a);
System.out.println(La suma de los numeros impares es : +b);

}
Ejercicio20 (MULTIPLOS DE 2 o DE 3)
Imprimir y contar los nmeros que son mltiplos de 2 o 3 que hay del 1 y 100.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio20
{
public static void main(String[] args)
{

int a = 0, m = 0;
while (a < 100)
{
a++;
if (a % 2 == 0 || a % 3 == 0)
{

m = m + 1;
System.out.println(Multiplo de 2 o 3 : +a);
}
}
System.out.println(Hay multiplos de dos o tres : + m);
}
}
Ejercicio 21 (MULTIPLO DE 2Y DE 3)
Imprimir y contar los nmeros que son mltiplos de 2 y 3 que hay del 1 al 100.
package edu.upe.practica.ejercicios;
public class Ejercicio21 {
public static void main(String[] args) {
int c=0;
int m2=0;
int m3=0;
while (c<100)
{
c++;
if (c%2==0)
{

m2++;
m2=c;

System.out.println(Los multiplos de 2 son:+m2);


}
if (c%3==0)
{
m3++;
m3=c;

System.out.println(Los multiplos de 3 son:+m3);


}
}
}
}
Ejercicio 23
Introducir dos nmeros por teclado. Imprimir los nmeros naturales que hay entre ambos nmeros
empezando por el ms pequeo, contar cuantos hay y cuantos de ellos son pares. Calcular la
suma de los impares.
package edu.upe.practica.ejercicios;
import javax.swing.JOptionPane;
public class Ejercicios23
{
public static void main(String[] args)
{
int n1,n2,c=0,p=0,im=0;
System.out.print(Introduce el numero 1:);

n1=Consola.leerentero();
System.out.print(Introduce el numero 2:);

n2=Consola.leerentero();
for(int i=n1;i<=n2;i++)
{
System.out.println(Numero:+i);
c++;

if((i%2)==0)
{
p++;
}
else
{
im=im+i;
}

}
System.out.println(Hay: +c+ numeros);
System.out.println(De los cuales : +p+ son pares);
System.out.println(La suma de los impares son: +im);
}
}

Ejercicio29
SEPARADO EN 7 UNIDADES, SUMAR LOS IMPARES

Introducir dos nmeros por teclado de tal forma que el segundo sea mayor que el primero. A partir
del primero. Imprimir los nmeros separados. Entre si 7 unidades, contarlos. Cuantos de estos
son pares y cuanto vale la suma de los impares.
package edu.upe.practica
import javax.swing.JOptionPane;
public class Ejercicio29 {

public static void main(String[] args) {


int n1=0;
int n2=0;
int c=0;
int cs=0;
int cp=0;
int sp=0;
JOptionPane.showMessageDialog(null, Ingrese dos valores donde el segundo sea mayor);
while(n1>=n2)
{
n1=Integer.parseInt(JOptionPane.showInputDialog(Ingrese 1er valor));
n2=Integer.parseInt(JOptionPane.showInputDialog(Ingrese 2do valor));
}
while(n1<n2)
{
cs++;
if(cs==7)
{
JOptionPane.showMessageDialog(null, Numero separado en 7 unidades es: +n1);
cs=0;
c++;

if(n1%2==0)
{
cp++;
}
else
{
sp+=n1;
}
}
n1++;
}
JOptionPane.showMessageDialog(null, La cantidad de numeros separados 7 unidades es: +c+
\nLa cantidad de numeros pares es: +cp+
\nLa sumatoria de los numeros impares es:+sp);
}
}
Ejercicio30
Introducir una cantidad por teclado. Si es menor que 500, sumarle el 50 por ciento; si es mayor o
igual a 500 pero menor que 1000, sumarle el 7 por ciento; si es mayor que 1000 y menor o igual a
5000, restarle el 5 por ciento.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio30
{
public static void main(String[] args)
{
int n=0;
System.out.print(Ingrese un nmero entero positivo: );
n = Datos.LeerNumero();

if(n<500)
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la suma del 50% es: + (n+(n*50/100)));
}
else
{
if(n>=500 && n<1000)
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la suma del 7% es: + (n+(n*7/100)));
}
else
{
if(n>=1000 && n<5000)
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la suma del 15% es: + (n+
(n*15/100)));
}
else
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la resta del 5% es: + (n-(n*5/100)));
}
}
}
}

}
Ejercicio31
Imprimir diez veces la serie de nmeros del 1 al 10.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio31
{
public static void main(String[] args)
{
for(int c=0;c<10;c++)
{
for(int i=1;i<=10;i++)
{
System.out.print(, +i);
}
System.out.println( Numero de Repeticiones: +c);
}
}
}
Ejercicio32
Imprimir, contar y sumar los mltiplos de 2 que hay entre una serie de nmero, tal que el segundo
sea mayor o igual que el primero.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio32
{
public static void main(String[] args)
{
int n1=1, n2=0, c=0, cp=0, sp=0;
while(n1>n2)

{
System.out.print(Ingrese un valor entero positivo: );
n1 = Datos.LeerNumero();
System.out.print(Ingrese el otro valor mayor al anterior: );
n2 = Datos.LeerNumero();
if (n1>n2)
{
System.out.println(Error debe ingresar el pimer valor menor al segundo);
}
}
c=n1;
while(c<=n2)
{
if(c%2==0)
{
System.out.println(El valor ledo es: +c);
cp++;
sp=sp+c;
}
c++;
}
System.out.println(Los nmeros PARES encontrados son: + cp);
System.out.println(La suma de los nmeros PARES encontrados es: + sp);
}
}
Ejercicio33 (FACTORIAL)
Calcular e imprimar la factorial de un nmero ingresado va teclado.

package ambientegrafico.repaso.ejercicios;
public class Ejercicio34
{
public static void main(String[] args)
{
int n1=0, n2=0, c=0, multi=0;
System.out.print(Ingrese el primer nmero entero: );
n1=Datos.LeerNumero();
System.out.print(Ingrese el segundo nmero entero: );
n2=Datos.LeerNumero();
while(c<n2)
{
multi=multi+n1;
c++;
}
System.out.print(La multiplicacin por sumas sucesivas es: +multi);
}
}

Ejercicio34
Hacer un programa que obtenga el producto de dos nmeros enteros positivos mediante restas
sucesivas.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio34
{

public static void main(String[] args)


{

int n1=0, n2=0, c=0, multi=0;


System.out.print(Ingrese el primer nmero entero: );
n1=Datos.LeerNumero();
System.out.print(Ingrese el segundo nmero entero: );
n2=Datos.LeerNumero();
while(c<n2)
{
multi=multi+n1;
c++;
}
System.out.print(La multiplicacin por sumas sucesivas es: +multi);

}
Ejercicio35
Obtener el cociente y el resto de dos nmeros enteros positivos mediante restas sucesivas.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio35
{
public static void main(String[] args)
{
int n1=0, n2=1, c=0, i=0;
while(n2>n1)
{
System.out.print(Ingrese un valor entero positivo: );
n1 = Datos.LeerNumero();

System.out.print(Ingrese el otro valor mmenor al anterior: );


n2 = Datos.LeerNumero();
if (n1>n2)
{
System.out.println(Error debe ingresar el pimer valor menor al segundo);
}
}
c=n1;
while(c>=n2)
{
c=c-n2;
i++;
}
System.out.println(El cociente por restas sucesivas es: + i);
System.out.println(El resto de la divisn por restas sucesivas es: + c);

Ejercicio36 (RAICES)
Hacer un algoritmo que calcule las races de una ecuacin de segundo grado. Repetir el proceso
tantas veces como se desee.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio36
{

public static void main(String[] args)


{
double a, b, c, discr;
System.out.print(Escribe el coeficiente del trmino de 2ndo grado: );
a = Datos.LeerDuoble();
if(a==0)
{
System.out.println(Este programa slo sirve para ecuaciones de 2ndo grado);
return;
}
System.out.print(Escribe el coeficiente del trmino de 1er grado: );
b = Datos.LeerDuoble();
System.out.print(Escribe el trmino independiente: );
c = Datos.LeerDuoble();
discr=b*b-4*a*c;
System.out.println(Discriminante de la ecuacin es: +discr);
if(discr==0)
{
System.out.println(Solucin Doble);
}
if(discr<0)
{
System.out.println(Solucin Imaginaria);
}
if(discr>0)
{
System.out.println(Solucin Real y diferente);

Ejercicio37
Hacer un programa que determine cuantas cifras posee un nmero entero positivo introducido por
teclado .repetir el proceso.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio37
{
public static void main(String[] args)
{
int n=0, i=0;
System.out.print(Ingrese un valor entero positivo: );
n = Datos.LeerNumero();

while(n>=10)
{
i++;
n=n/10;
}
System.out.print(El nmero tiene: + (i+1) + dgitos);

}
Ejercicio38
Calcular la suma de los n primeros trminos de una progresin aritmtica , dada por el valor de su
primer termino y la diferencia entre dos trminos consecutivos cualesquiera
package ambientegrafico.repaso.ejercicios;
public class Ejercicio38
{
public static void main(String[] args)
{
int n=0, razon=0, primer=1;
while(primer>n || razon>=n)
{
System.out.print(Ingrese un nmero entero positivo: );
n = Datos.LeerNumero();
System.out.print(Ingrese el nmero para la Razn de la progresin Aritmtica: );
razon = Datos.LeerNumero();
System.out.print(Ingrese el nmero para el primer trmino de la progresin
Aritmtica: );
primer = Datos.LeerNumero();
if(primer>=n || razon>=n)
{
System.out.println(La Razn y el primer trmino no deben ser mayores al
nmero lmite);
}
}

Ejercicio39 (FIBONACCI)
Hacer un algoritmo que imprima los primeros 30 trminos de la serie de Fibonacci. La serie es: 0,
1, 2, 3, 5, 8,..
package edu.upe.practica.ejercicios;
public class Ejercicio39
{
public static long fib(int n)
{
if (n <= 1)
return n;

else return fib(n-1) + fib(n-2);


}
public static void main(String[] args)
{
int N = 30;
for (int i = 1; i <= N; i++)
System.out.println(i + : + fib(i));
}
}

Ejercicio40 (PRIMO)
Calcular el menor numero primo de un numero que introducimos va teclado.
package upe.practica.trabajopractico;

public class NumeroPrimo


{
public static void main(String[] args)
{
int c=0,aux=0, cp=0,n=0;
System.out.println(Ingrese un valor: );
n=Console.readInteger();
while(c<n)
{
c++;
while(aux<c)
{
aux++;
if (c%aux==0)
{
cp++;
}
}
if(cp==2)
{
System.out.println( +c);

}
cp=0;
aux=0;
}
System.out.println(El menor nro primos es: 2);

}
}
Ejercicio41
Introducir un nmero entero, imprimir el valor equivalente en binario.
package ambientegrafico.repaso.ejercicios;
import upe.practica.trabajopractico.Console;
public class Ejercicio41 {

public static void main(String[] args) {


System.out.print(CONVERSOR DE NUMEROS DECIMALES A BINARIO);
System.out.println();
System.out.println(Ingrese numero decimal :);

int i=0;
int x=0;
i=Console.readInteger();

while ((i)!=0)
{

x=i%2;
System.out.print(+x);
i=i/2;
}
}
}
Ejercicio 01
Hacer un algoritmo que imprima los nmeros del 0 al 100

package edu.upe.practica.ejercicios;
public class Ejercicios01
{
public static void main(String[] args)
{
int c=-1;
while (c<100)
{
c++;
System.out.println(Imprimir:+c);
}
}
}
Ejercicio 02
Hacer un algoritmo que imprima los nmeros del 100 al 0 en orden decreciente
package edu.upe.practica.ejercicios;
public class Ejercicios02
{
public static void main(String[] args)
{
int c=101;
while (c>0)
{
c;
System.out.println(Imprimir:+c);
}
}
}
Ejercicio 03
Hacer un algoritmo que imprima las sumas de los 100 primeros nmeros enteros
package edu.upe.practica.ejercicios;
public class Ejercicios03
{
public static void main(String[] args)
{
int c=0;
int s=0;
while (c<100)
{
c++;
s=c+s;
}
System.out.println(Imprimir:+s);
}
}
Ejercicio 04
Hacer un algoritmo que imprima los nmeros pares entre el 0 al 100
package edu.upe.practica.ejercicios;
public class Ejercicios04
{
public static void main(String[] args)
{
int c=0;
int np=0;
while (c<100)
{
c++;
if (c%2==0)
{
np=c;

System.out.println(N Pares:+np);
}
}
}
}
Ejercicio 05
Hacer un algoritmo que imprima los nmeros impares hasta el 100 y que imprima cuantos impares
hay
package edu.upe.practica.ejercicios;
public class Ejercicios05
{
public static void main(String[] args)
{
int c=0;
int ni=0;
int ci=0;
while (c<100)
{
c++;
if (c%2==1)
{
ci++;
ni=c;
System.out.println(Impar:+ni);
}
}
System.out.println(Cantidad ipares son:+ci);
}
}
Ejercicio 06
Hacer un algoritmo que imprima los nmeros impares desde el 100 hasta la unidad y que calcule
su suma
package edu.upe.practica.ejercicios;
public class Ejercicios06
{
public static void main(String[] args)
{
int c=100;
int ni=0;
int si=0;
while (c>0)
{
c;
if (c%2==1)
{
si=si+c;
ni=c;
System.out.println(Impar:+ni);
}
}
System.out.println(La suma es:+si);
}
}
Ejercicio 07
Hacer un algoritmo que imprima todos los nmeros naturales que hay desde la unidad hasta un
nmero introducido por teclado
package edu.upe.practica.ejercicios;
import edu.upe.practica.ejercicios.Consola;
public class Ejercicios07

{
public static void main(String[] args)
{
int c=0;
int n=0;
System.out.println(Ingrese un valor numerico );
n=Consola.leerentero();
while (c<n)
{
c++;
System.out.println(El numero es: +c);
}
}
}
Ejercicio 08
Hacer un algoritmo que imprima y cuente los mltiplos de 3
que hay entre 1 y 100
package upe.practica.ejercicios;
public class Ejercicios08
{
public static void main(String[] args)
{
int c=0;
int m3=0;
int s3=0;
while (c<100)
{
c++;
if (c%3==0)
{
s3++;
m3=c;
System.out.println(:+m3);
}
}
System.out.println(La cantidad de Multiplo de 3 son:+s3);
}
}
Ejercicio 09
Hacer un algoritmo que calculas la suma de los nmeros impares comprendidos entre el 0 y 100
package edu.upe.practica.ejercicios;
public class Ejercicios09
{
public static void main(String[] args)
{
int c=0;
int m3=0;
int si=0;
while (c<100)
{
c++;
if (c%3==0)
{
si=si+c;
m3=c;
System.out.println(Los multiplos de 3 son:+m3);
}
}
System.out.println(La suma es:+si);

}
}
Ejercicio 10
Hacer un algoritmo que imprima y cuente los mltiplos de 5
que hay entre 1 y 500
package edu.upe.practica.ejercicios;
public class Ejercicios10
{
public static void main(String[] args)
{
int c=0;
int m5=0;
int si=0;
while (c<500)
{
c++;
if (c%5==0)
{
si++;
m5=c;
System.out.println(Los multiplos de 5 son:+m5);
}
}
System.out.println(Los multiplo de 5 Existe:+si);
}
}
Ejercicio 11
Imprimir, contar y sumar los mltiplos de 2 hasta un nmero que introducimos por teclado
package edu.upe.practica.ejercicios;
import edu.upe.practica.ejercicios.Consola;
public class Ejercicios11
{
public static void main(String[] args)
{
int c=0;
int n=0;
int np=0;
int sp=0;
System.out.println(Ingrese un valor numerico );
n=Consola.leerentero();
while (c<n)
{
c++;
if (c%2==0)
{
np++;
sp=sp+c;
}
}
System.out.println(La cantidad de Multiplo de 2 son: +np);
System.out.println(Las suma es: +sp);
}
}
Ejercicio 12
Imprimir, contar y sumar los mltiplos de 10 hasta un nmero que introducimos por teclado
package edu.upe.practica.ejercicios;
public class Ejercicios12
{
public static void main(String[] args)
{

int c=0;
int n=0;
int m10=0;
int sm10=0;
System.out.println(Ingrese un valor numerico );
n=Consola.leerentero();
while (c<n)
{
c++;
if (c%10==0)
{
m10++;
sm10=sm10+c;
}
}
System.out.println(La cantidad de N Multiplo de 10 son: +m10);
System.out.println(Las suma es: +sm10);
}
}
Ejercicio 13
Introducir un nmero por teclado menor que 500. Imprimir, sumar y contar los nmeros que estan
separado entre si 8 posiciones, desde ese numero al 500
package edu.upe.practica.ejercicios;
import javax.swing.JOptionPane;
public class Ejercicio13
{
public static void main(String[] args)
{
int n=0, cc=0, s=0, sw=0;
n=Integer.parseInt(JOptionPane.showInputDialog(Ingrese el Numero: ));
while (sw==0)
{
if (n>=500)
{
System.out.println(El numero debe ser menor a 500 );
n=Integer.parseInt(JOptionPane.showInputDialog(Ingrese el Numero: ));
}
if (n<500)
{
sw=1;
}
}
while (n<500)
{
System.out.println(Numero: +n);
s=s+n;
cc=cc+1;
n=n+8;
}
System.out.println(La Suma es= +s);
System.out.println(La Cantidad es= +cc);
}
}
Ejercicio 14 (SUMA DE CUDRADO)
Calcular la suma de los cuadrados de los nmeros pares entre el 0 y el 100.
package edu.upe.practica.ejercicios;

public class Ejercicios14


{
public static void main(String[] args)
{
double a;
double b=0;
int c=0;
while (c<100)
{
a=Math.pow(c,2);
b=b+a;
c=c+2;
}
System.out.print(El cuadrado de los numeros pares comprendidos entre 0-100 es : +b);
}
}
Ejercicio 15 (SUMA DE 2 ENTRE 4 POSICIONES)
Introducir un numero por teclado menor que 100.imprimir la suma de los cuadrados de los
nmeros que estn separados entre si 4 posiciones.
package edu.upe.practica.ejercicios;
public class Ejercicios15
{
public static void main(String[] args)
{
int c=0;
double a;
double b=0;
while (c<10)
{
a=Math.pow(c,2);
c=c+4;
b=b+a;
}
System.out.print(El cuadrado de los numeros separados entre cuatro posiciones es : +b);
}
}
Ejercicio 16
Introducir un numero por teclado que nos diga si es positivo o negativo .
package edu.upe.practica.ejercicios;
public class Ejercicios16
{
public static void main(String[] args)
{
System.out.println(INGRESE UN NUMERO );
int n=Consola.leerentero();
if (n<0)
{
System.out.print(El numero ingresado es : NEGATIVO );
}
else
if (n>=0)
{
System.out.print(El numero ingresado es : POSITIVO );
}
}
}
Ejercicio 17
Introducir un nmero por teclado. Que nos diga si es par o impar.
package edu.upe.practica.ejercicios;

public class Ejercicios17


{
public static void main(String[] args)
{
int n=Consola.leerentero();
if ((n%2)==0)
{
System.out.print(El numero es par);
}
else
if ((n%2)!=0)
{
System.out.print(El numero es impar);
}
}
}
Ejercicio 18
Imprimir y contar los mltiplos de 3 desde la unidad hasta un nmero que introducimos por
teclado
package upe.practica.ejercicios;
public class Ejercicio18
{
public static void main(String[] args)
{
int n=0;
int c=0;
int m3=0;
int c3=0;
System.out.println(Ingrese el valor: );
n=Consola.leerentero();
while (c<=n)
{
c++;
if (c%3==0)
{
c3++;
m3=c;
System.out.println(: +m3);
}
}
System.out.println(La cantidad de M3 es: +c3);
}
}
Ejercicio 19
Hacer un algoritmo que imprima los nmeros del 1 al 100 .que calcule la suma de todos los
nmeros pares por un lado y otro la de todos los impares.
package upe.practica.ejercicios;
public class Ejercicio19 {
public static void main(String[] args) {
int a=0;
int b=0;
int c=1;
while (c<=100)
{
System.out.print(,+c);
if ((c%2)==0){
a=a+c;
}
else
if ((c%2)!=0){
b=b+c;

}
c++;
}
System.out.println();
System.out.println(La suma de los numeros pares es : +a);
System.out.println(La suma de los numeros impares es : +b);
}
}
Ejercicio20 (MULTIPLOS DE 2 o DE 3)
Imprimir y contar los nmeros que son mltiplos de 2 o 3 que hay del 1 y 100.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio20
{
public static void main(String[] args)
{
int a = 0, m = 0;
while (a < 100)
{
a++;
if (a % 2 == 0 || a % 3 == 0)
{
m = m + 1;
System.out.println(Multiplo de 2 o 3 : +a);
}
}
System.out.println(Hay multiplos de dos o tres : + m);
}
}
Ejercicio 21 (MULTIPLO DE 2Y DE 3)
Imprimir y contar los nmeros que son mltiplos de 2 y 3 que hay del 1 al 100.
package edu.upe.practica.ejercicios;
public class Ejercicio21 {
public static void main(String[] args) {
int c=0;
int m2=0;
int m3=0;
while (c<100)
{
c++;
if (c%2==0)
{
m2++;
m2=c;
System.out.println(Los multiplos de 2 son:+m2);
}
if (c%3==0)
{
m3++;
m3=c;
System.out.println(Los multiplos de 3 son:+m3);
}
}
}
}
Ejercicio 22 (OptionPane)
Hacer un algoritmo que imprima el mayor el menor de una serie de cinco nmeros que vamos
introduciendo por teclado.
package edu.upe.practica.ejercicios;
import javax.swing.JOptionPane;
public class Ejercicios22
{

public static void main(String[] args)


{
int num1=0;
int num2=0;
int num3=0;
int num4=0;
int num5=0;
int may=-999;
int men=999;
String val1;
String val2;
String val3;
String val4;
String val5;
val1=JOptionPane.showInputDialog(Escriba el primer numero entero);
val2=JOptionPane.showInputDialog(Escriba el segundo numero entero);
val3=JOptionPane.showInputDialog(Escriba el tercer numero entero);
val4=JOptionPane.showInputDialog(Escriba el cuarto numero entero);
val5=JOptionPane.showInputDialog(Escriba el quinto numero entero);
num1=Integer.parseInt(val1);
num2=Integer.parseInt(val2);
num3=Integer.parseInt(val3);
num4=Integer.parseInt(val4);
num5=Integer.parseInt(val5);
if (num1>=may){
may=num1;
}
if (num2>=may){
may=num2;
}
if (num3>=may){
may=num3;
}
if (num4>=may){
may=num4;
}
if (num5>=may){
may=num5;
}
if (num1<=men){
men=num1;
}
if (num2<=men){
men=num2;
}
if (num3<=men){
men=num3;
}
if (num4<=men){
men=num4;
}
if (num5<=men){
men=num5;
}
JOptionPane.showMessageDialog(null,El mayor numero introducido es : +may);
JOptionPane.showMessageDialog(null,El menor numero introducido es : +men);
}
}
Ejercicio 23

Introducir dos nmeros por teclado. Imprimir los nmeros naturales que hay entre ambos nmeros
empezando por el ms pequeo, contar cuantos hay y cuantos de ellos son pares. Calcular la
suma de los impares.
package edu.upe.practica.ejercicios;
import javax.swing.JOptionPane;
public class Ejercicios23
{
public static void main(String[] args)
{
int n1,n2,c=0,p=0,im=0;
System.out.print(Introduce el numero 1:);
n1=Consola.leerentero();
System.out.print(Introduce el numero 2:);
n2=Consola.leerentero();
for(int i=n1;i<=n2;i++)
{
System.out.println(Numero:+i);
c++;
if((i%2)==0)
{
p++;
}
else
{
im=im+i;
}
}
System.out.println(Hay: +c+ numeros);
System.out.println(De los cuales : +p+ son pares);
System.out.println(La suma de los impares son: +im);
}
}
Ejercicio 24 (MAYOR O MENOR DE 10)
Introducir una serie de nmeros. Decir si esos nmeros son mayores o menores de 10.
package edu.upe.practica.ejercicios;
public class Ejercicios24
{
public static void main(String[] args)
{
int n=0, n2=0, n3=0, n4=0, n5=0;
n=Consola.leerentero();
n2=Consola.leerentero();
n3=Consola.leerentero();
n4=Consola.leerentero();
n5=Consola.leerentero();
if (n>10)
{
System.out.println(El primer nro. es mayor a 10);
}
else
{
System.out.println(El primer nro. es menor a 10);
}
if (n2>10)
{
System.out.println(El segundo nro. es mayor a 10);
}
else
{

System.out.println(El segundo nro. es menor a 10);


}
if (n3>10)
{
System.out.println(El tercer nro. es mayor a 10);
}
else
{
System.out.println(El tercer nro. es menor a 10);
}
if (n4>10)
{
System.out.println(El cuarto nro. es mayor a 10);
}
else
{
System.out.println(El cuarto nro. es menor a 10);
}
if (n5>10)
{
System.out.println(El quinto nro. es mayor 10);
}
else
{
System.out.println(El quinto nro. es menor a 10);
}
}
}
Ejercicio 25
Introducir tantos nmeros que hay entre el 1 al 100.excepto los mltiplos de 2.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio25
{
public static void main(String[] args)
{
int n=0, i=0;
System.out.println(
Introduce del 1 al 100);
System.out.print(Ingrese su Numero: );
n = Datos.LeerNumero();
if (n % 2==1 && n < 100)
{
System.out.println(El contador =);
for(i=n;i<=100;i++)
{
if (i % 2 == 1)
{
System.out.println( +i);
}
}
}
else
{
System.out.println(Negado el multiplo de 2 o fuera de rango);
}
}
}
Ejercicio 26
Imprimir y sumar los nmeros desde el cero hasta un numero determinado, excepto los mltalos
de 5 imprimir el valor de la suma de los mltiplos de 5.
package upe.practica.ejercicios;
public class Ejercicio26

{
public static void main(String[] args)
{
int n=0;
int c=0;
int m5=0;
int cn=0;
System.out.println(Ingrese un valor: );
n=Consola.leerentero();
while(c <n)
{
System.out.println(: +c);
c++;
if (c%5==0)
{
m5=m5+c;
}
else
{
cn=cn+c;
}
}
System.out.println(La suma es: +cn);
System.out.println(La suma de m5 es: +m5);
}
}
Ejercicio27
MULTIPLO DE 2 Y 3 EN JOPTIONPANE
Imprimir y contar los nmeros, que son a la vez mltiplos de 2 y 3, que hay entre la unidad y el
determinado nmero.
package edu.upe.practica;
import javax.swing.JOptionPane;
public class Ejercicio27 {
public static void main(String[] args) {
int cm=0;
int c=0;
int n=0;
n=Integer.parseInt(JOptionPane.showInputDialog(Ingrese un valor numerico));
while(c<n)
{
c++;
if (c%2==0 && c%3==0)
{
cm++;
JOptionPane.showMessageDialog(null,Multiplo de 2 y de 3: +c);
}
}
JOptionPane.showMessageDialog(null,La cantidad de multiplo encontrado es: +cm);
}
}
Ejercicio28
SUMAR LOS MUL. DE 5 Y SUMARLO LA CANTIDAD MAYOR ES
Introducir una serie de nmeros. Sumar los mltiplos de 5. Cual es el mayor y cuantos nmeros
se han introducido.
package edu.upe.practica;
import javax.swing.JOptionPane;
public class Ejercicio28 {
public static void main(String[] args) {
int c=0;
int n=0;
int res=0;

int s=0;
int may=0;
while(res==0)
{
c++;
n=Integer.parseInt(JOptionPane.showInputDialog(Ingrese un valor));
if (c==1)
{
may=n;
}
if (n>may)
{
may=n;
}
if(n%5==0)
{
s+=n;
}
res=JOptionPane.showConfirmDialog(null, Desea continuar con el programa?
presione s o n!);
}
JOptionPane.showMessageDialog(null,La sumatoria de los multiplos es: +s+
\nLa cantidad de numero ingresado es : +c+\nEl mayor valor es :+may);
}
}
Ejercicio29
SEPARADO EN 7 UNIDADES, SUMAR LOS IMPARES
Introducir dos nmeros por teclado de tal forma que el segundo sea mayor que el primero. A partir
del primero. Imprimir los nmeros separados. Entre si 7 unidades, contarlos. Cuantos de estos
son pares y cuanto vale la suma de los impares.
package edu.upe.practica
import javax.swing.JOptionPane;
public class Ejercicio29 {
public static void main(String[] args) {
int n1=0;
int n2=0;
int c=0;
int cs=0;
int cp=0;
int sp=0;
JOptionPane.showMessageDialog(null, Ingrese dos valores donde el segundo sea mayor);
while(n1>=n2)
{
n1=Integer.parseInt(JOptionPane.showInputDialog(Ingrese 1er valor));
n2=Integer.parseInt(JOptionPane.showInputDialog(Ingrese 2do valor));
}
while(n1<n2)
{
cs++;
if(cs==7)
{
JOptionPane.showMessageDialog(null, Numero separado en 7 unidades es: +n1);
cs=0;
c++;
if(n1%2==0)
{
cp++;
}
else
{
sp+=n1;
}
}
n1++;
}

JOptionPane.showMessageDialog(null, La cantidad de numeros separados 7 unidades es: +c+


\nLa cantidad de numeros pares es: +cp+
\nLa sumatoria de los numeros impares es:+sp);
}
}
Ejercicio30
Introducir una cantidad por teclado. Si es menor que 500, sumarle el 50 por ciento; si es mayor o
igual a 500 pero menor que 1000, sumarle el 7 por ciento; si es mayor que 1000 y menor o igual a
5000, restarle el 5 por ciento.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio30
{
public static void main(String[] args)
{
int n=0;
System.out.print(Ingrese un nmero entero positivo: );
n = Datos.LeerNumero();
if(n<500)
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la suma del 50% es: + (n+(n*50/100)));
}
else
{
if(n>=500 && n<1000)
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la suma del 7% es: + (n+(n*7/100)));
}
else
{
if(n>=1000 && n<5000)
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la suma del 15% es: + (n+
(n*15/100)));
}
else
{
System.out.println(El nmero leido es: + n);
System.out.print(Su total con la resta del 5% es: + (n-(n*5/100)));
}
}
}
}
}
Ejercicio31
Imprimir diez veces la serie de nmeros del 1 al 10.
package ambientegrafico.repaso.ejercicios;
public class Ejercicio31
{
public static void main(String[] args)
{
for(int c=0;c<10;c++)
{
for(int i=1;i<=10;i++)
{
System.out.print(, +i);
}
System.out.println( Numero de Repeticiones: +c);
}
}
}
Ejercicio32
Imprimir, contar y sumar los mltiplos de 2 que hay entre una serie de nmero, tal que el segundo
sea mayor o igual que el primero.
package ambientegrafico.repaso.ejercicios;

public class Ejercicio32


{
public static void main(String[] args)
{
int n1=1, n2=0, c=0, cp=0, sp=0;
while(n1>n2)
{
System.out.print(Ingrese un valor entero positivo: );
n1 = Datos.LeerNumero();
System.out.print(Ingrese el otro valor mayor al anterior: );
n2 = Datos.LeerNumero();
if (n1>n2)
{
System.out.println(Error debe ingresar el pimer valor menor al segundo);
}
}
c=n1;
while(c<=n2)
{
if(c%2==0)
{
System.out.println(El valor ledo es: +c);
cp++;
sp=sp+c;
}
c++;
}
System.out.println(Los nmeros PARES encontrados son: + cp);
System.out.println(La suma de los nmeros PARES encontrados es: + sp);
}

44)Sol:
Calcule la suma y la cantidad de nmeros de la serie de fibonacci, menores
aN.

Calcular n primeros trminos de la serie de Fibonacci


Codigo Fuente en Python
Problema
Calcular n primeros trminos de la serie de Fibonacci

Solucin
El usuario ingresa el nmero de trminos que desea visualizar de la serie de Fibonacci.
La sucesin de Fibonacci es la siguiente sucesin infinita de nmeros naturales:

0,1,1,2,3,5,8,13,21,34,55,89,144,233,377

Ejemplo

Entrada: 5

Salida: 0 1 1 2 3

Codigo Fuente en Python


view plainprint?

1.

def fibonacci(contador,n,p1,p2):

2.

var = ""

3.

if(contador!=n):

4.

var=fibonacci(contador+1,n,p2,p1+p2)

5.

var=str(p2)+" "+var

6.

return var

7.

n = int(input("Ingrese un numero entero\n"))

8.

if(n>0):

9.

a=fibonacci(0,(n-1),0,1)

10. print ("0 "+a)


Publicado por George Tacuri en 18:16
Etiquetas: algoritmo , codigo fuente , ejercicios resueltos , programacion
modular ,python , Recursividad
Tu solucion esta mal definida. No te piden los primeros 100 numeros de la serie, te piden la
suma de los numeros de la serie. La solucion seri asi
Entero N1,N2,N3,suma
N1=1; N2=1; N3=1;suma=0
mientras N3<=1000 hacer
si N3>=100 entonces
suma = suma + N3
fsi
N1=N2

#include<stdio.h>
#include<stdlib.h>
#include<conio.h>
#include<iostream.h>
/* Programa para calcular la serie del
fibonacci por medio de un ciclo
*/
void FibonacciNormal(int Num)
{
long i,b1=1,b2=0,Aux;
for (i=1;i<=Num;i++)
{
Aux=b2;

printf("%ld + %ld = %ld


",b1,b2,b1+b2);
b2= b1 + b2;
b1= Aux;
}
}
void main()
{
int Numero;
int Fib;
printf("*** PROGRAMA PARA CALCULAR E IMPRIMIR LA SERIE DEL FIBONACCI ***");
printf("Cuantos dgitos deseas calcular: ");
cin >> Numero;
FibonacciNormal(Numero);
printf("Presiona una tecla...");
getch();
}
#include "stdafx.h"
#include <iostream>
using namespace System;
using namespace std;
void main()
{
int a,b,x,c,l;
a=1;
b=1;
x=0;
c=0;
cout<<"Introduce el limite de la serie: ";
cin>>l;
if (l>0)
{
if (l==1) cout<<"1"<<endl;
else
{
cout<<endl<<a<<", "<<b<<", ";
while (c<l-2)
{
c++;
x=a+b;
cout<<x<<", ";
a=b;
b=x;
}
}
}
}

prueba de escritorio

Introduce el limite de la serie: 6


1, 1, 2, 3, 5, 8, Presione una tecla para continuar . . .
ESTE ESTA EN VASIC!!!

Factorial de un nmero
19/nov/2006 Java Java Bsicos, Java Bucles, Java Math, Java Math Factorial, Java
Recursividad 180 Comentarios

El factorial de un nmero es la multiplicacin de los nmero que van del 1 a dicho nmero.
Para expresar el factorial se suele utilizar la notacin n!. As la definicin es la siguiente:
n! = 1 x 2 x 3 x 4 x 5 x ... x (n-1) x n.

Siguiendo esta simple expresin podramos codificarlo en Java de la siguiente forma.


Lo primero es definir la variable que va a definir el factorial y la que definir el nmero
sobre el que vamos a calcular el factorial.
1. double factorial = 1;
2. // El nmero elegido para el factorial es el 30
3. double numero=30;

Lo siguiente es hacer el bucle en el cual iremos decrementando el nmero y multiplicando


por el valor del factorial.
1. while ( numero!=0) {
2.

factorial=factorial*numero;

3.

numero--;

4. }

Solo nos quedar el volcar el valor por pantalla:

1. System.out.println(factorial);

Esta es una forma muy sencilla de implementar el factorial. Si bien, tenemos otra forma de
implementarlo. En este caso el factorial se define de una forma recursiva. Esta definicin
fue realizada por el matemtico frances Christian Kramp.
La definicin viene a decir lo siguiente:
si n=0
entonces el factorial es 1
si n > 1
entonces (n-1)! x n

Esta implementacin se puede definir con recursividad en la programacin Java de la


siguiente forma:
1. public int factorial (double numero) {
2.

if (numero==0)

3.

return 1;

4.
5.

else
return numero * factorial(numero-1);

6. }

Como podemos ver es un calco de la definicin de Christian Kramp. En esta definicin el


mtodo se ir llamando recursivamente hasta que se llegue a calcular el factorial del
nmero 0.
Para volcar el dato por pantalla tendremos la siguiente lnea de cdigo:
1. System.out.println(factorial(40));

49) De cuantos formas se pueden ordenar n objetos :

Ejemplo PERMUREP: Escribir un programa que calcule las permutaciones


de N elementos donde hay M elementos iguales (y todos los dems
diferentes), introduciendo N y M por teclado.
El resultado es el factorial del nmero de elementos totales dividido por el
factorial de los elementos repetidos. Por tanto, ya que hay que calcular dos
veces un factorial, lo escribiremos como una funcin factorial que ser usada
dos veces desde el programa principal.

/* PERMUREP */
#include <stdio.h>
int factorial(int num);
main()
{
int n,m,perm;
printf("Cual es el numero de elementos? ");
scanf("%d",&n);
printf("De los %d elementos, cuantos hay repetidos? ", n);
scanf("%d",&m);
perm=factorial(n)/factorial(m);
printf("Las permutaciones posibles de %d elementos habiendo %d
repetidos son %d\n",n,m,perm);
}
int factorial(int num)
{
int i, result;
result=1;
for(i=2;i<=num;i++)
result *= i;
return result;
}

UNCIONES Y CONTROL DE ERRORES

Ejemplo COMBINA2: Escribir una funcin que calcule el


nmero combinatorio de N sobre M, usando a su vez la
funcin factorial, y un programa que la utilice.
Puede suceder que una funcin reciba valores
inadecuados (en el caso de la funcin que calcule el
combinatorio, que reciba valores negativos o que M sea
mayor que N). Sin embargo la funcin no debe escribir ningn
mensaje de error, ya que lo que se est esperando es que se
devuelva un valor.
Por eso, si no se quiere controlar los valores antes de llamar a
la funcin, se puede hacer que en caso de que los valores
recibidos no sean adecuados la funcin devuelva un valor que
en otro caso no podra dar (por ejemplo, y en este caso, -1) y
que desde donde se llam a la funcin se controle el valor
devuelto.

En otros casos, donde la funcin puede producir


correctamente cualquier valor, se har que la funcin
devuelva un cdigo indicando la correccin o no de su
ejecucin, y los valores resultantes se proporcionen mediante
paso por referencia (este sera el caso de la funcin scanf y
otras muchas funciones de las libreras estandar).

/* COMBINA2 */
#include <stdio.h>
int combi(int arriba, int abajo);
int factorial(int num);
main()
{
int n,m,comb;
printf("Cual es el numero de elementos? ");
scanf("%d",&n);
printf("De los %d elementos, cuantos se cogen? ", n);
scanf("%d",&m);
comb=combi(n,m);
if(comb<0)
printf("Los datos son inconsistentes\n");
else
printf("Las combinaciones posibles de %d elementos tomando %d son
%d\n",n,m,comb);
}
int combi(int arriba, int abajo)
{
if( (arriba<0) || (abajo<0) || (arriba<abajo) )
return -1;
else
return factorial(arriba)/(factorial(abajo)*factorial(arriba-abajo));
}
int factorial(int num)
{
int result;

result=1;
while(num>1)
result *= num--;
return result;
}

45) Sol: Dado un rango de nmeros determine cuantos nmeros capicas


hay :
Sol:
1. Muestre todos los pares entre a y b, Y diga cuntos son.
#include<iostream.h>
void main (void)
{int a,b,c,i;
cout<<"Introducir el primer numero: ";cin>>a;
cout<<"Introducir el segundo numero: ";cin>>b;
i=0;
cout<<endl;
c=a;
for(a=a+1; a<b; a++)
{if(a%2==0)
{i=i+1;
cout<<a<<endl;
}
}
cout<<"Los numeros pares entre "<<c<<" y "<<b<<" son: "<<i<<endl<<endl;
}
2. Un Nmero se considera perfecto si es igual a la suma de sus
divisores menores que el. Escriba un programa para encontrar todos los nmeros perfectos dentro de un
rango dado.
#include<iostream.h>
void main (void)
{int i,n,s,m;
s=0;
cout<<endl;
cout<<"Introducir el primer numero: ";cin>>n;
cout<<"Introducir el segundo numero: ";cin>>m;
for(n=n+1;n<m;n++)
{s=0;
for(i=1;i<n;i++)
{if(n%i==0)
s=s+i;
}//fin segundo for
if(s==n)

cout<<s<<endl;
}//fin primer for
}//fin main
3. Encuentre todos los nmeros primos de 3 dgitos.
#include<iostream.h>
void main (void)
{int n,i,x;
cout<<endl<<"NUMEROS PRIMOS DE TRES CIFRAS: "<<endl<<endl;
x=0;
for(n=100;n<1000;n++)
{x=0;
for(i=1;i<n;i++)
{if(n%i==0)
x=x+i;
}
if(x==1)
cout<<n<<"--";
}
cout<<endl<<endl;
}
4. Un cubo perfecto o nmero Amstrong es aquel que sumados los cubos de
sus dgitos nos dan el mismo nmero. Encuentre los 5 nicos cubos perfectos.
#include<iostream.h>
#include<math.h>
void main (void)
{ int n,num,a,s,b,i;
i=0;
cout<<endl<<"LOS NUMEROS CUBOS PERFECTOS SON :"<<endl<<endl<<endl;
for(n=1;i<=100;n++)
{b=n;
s=0;
while(b>0)
{num=b%10;
b=b/10;
a=pow(num,3);
s=s+a;
}
if(s==n)
{i=i+1;
cout<<"El numero "<<i<<" es: "<<s<<endl<<endl;
}

}
}
5. Dos nmeros son amigos cuando la suma de los divisores de uno de ellos es igual al otro y viceversa.
Muestre, si existen, los nmeros amigos donde ambos nmeros sean menores que n.

#include<iostream.h>
void main (void)
{int n,a,b,c,d,i,j,x,y;
cout<<"Ingresar el numero: ";cin>>n;
c=0;
d=0;
for(a=1;a<n;a++)
{x=0;
for(i=1;i<a;i++)
{if(a%i==0)
x=x+i;
}//fin segundo for
for(b=1;b<n;b++)
{y=0;
for(j=1;j<b;j++)
{if(b%j==0)
y=y+j;
}//fin cuarto for
if((x==b)&&(y==a))
if((a!=d)&&(b!=c))
{cout<<a<<"*"<<b<<endl<<endl;
c=a;
d=b;}
}//fin tercer for
}//fin primer for
}
6. Muestre todos los nmeros capicas o palndromos dentro de un rango determinado Un nmero es
capica cuando al invertir sus cifras nos da el mismo nmero.
#include<iostream.h>
#include<math.h>
void main (void)
{int n,m,num,a,b,Rf,R,P,e,c;
cout<<"Ingrese el primer numero: ";cin>>n;
cout<<"Ingrese el segundo numero: ";cin>>m;
cout<<endl<<"LOS NUMEROS CAPICUAS SON LOS SIGUENTES: "<<endl<<endl;
for(n=n+1;n<m;n++)
{a=n;
b=n;
Rf=0;
P=0;
while (a>0)
{num=a%10;
a=a/10;
P=P+1;
}
P=P-1;
while (b>0)
{c=b%10;
b=b/10;

e=pow(10,P);
R=c*e;
Rf=Rf+R;
P=P-1;}
if(Rf==n)
cout<<n<<endl;
}
cout<<endl;
}
7. Leer n nmeros e indique el mayor, menor y el promedio.
#include <iostream.h>
void main (void)
{int n,i;
double P,a,s,M,m;
cout<<"INGRESE LA CANTIDAD DE NUMEROS: ";cin>>n;
cout<<endl;
M=0;
m=999999999;
s=0;
for(i=1;i<=n;i++)
{cout<<"Ingresar el numero "<<i<<": ";cin>>a;
if(a>M)
M=a;
if(a<m)
m=a;
s=s+a;
}
P=s/i;
cout<<endl<<"El numero mayor es: "<<M<<endl<<"El numero menor es: "
<<m<<endl<<"El promedio es: "<<P<<endl<<endl;
}
8. Lea n notas con sus respectivos pesos y obtenga el promedio ponderado.
#include <iostream.h>
void main (void)
{int n,i;
double a,s,p,S;
cout<<"INGRESE LA CANTIDAD DE NOTAS: ";cin>>n;
cout<<endl;
S=0;
for(i=1;i<=n;i++)
{cout<<" * Ingresar la Nota "<<i<<": ";cin>>a;
cout<<" Ingresar el peso de la Nota "<<i<<": ";cin>>p;
cout<<endl;
s=(a*p);
S=S+s;
}
cout<<endl<<"EL PROMEDIO PONDERADO ES: "<<S<<endl<<endl;
}
9. Construya la tabla de sumar del 1 al 20.

#include<iostream.h>
#include<conio.h>
void main (void)
{int i,j ;
for(i=1;i<=20;i++)
{cout<<endl;
cout<<" *** TABLA DE MULTIPLICAR DEL "<<i<<" ***"<<endl<<endl;
for(j=1;j<=20;j++)
{cout<<i<<"*"<<j<<"="<<i*j<<endl;
}
getch();
}
}
10. Imprima el nmero 1, una vez; el 2, dos veces; el 3, tres veces; y as
sucesivamente hasta llegar a un nmero n ingresado por teclado.
#include<iostream.h>
void main (void)
{int i,j,n;
cout<<"Ingresar el valor de n: ";cin>>n;
cout<<endl;
for(i=1;i<=n;i++)
{for(j=1;j<i;j++)
{if(i<10)
cout<<i<<" ";
else
cout<<i<<" ";
}
cout<<""<<i<<endl;}
cout<<endl;
}
11. Si tenemos n dgitos y deseamos formar nmeros de r cifras (n>=r),
Cuntos nmeros diferentes podemos obtener?
#include<iostream.h>
void main (void)
{int n,r,a,P,p,R,i;
cout<<endl<<"* Ingrese el numero de digitos: ";cin>>n;
cout<<"* Ingrese el numero de cifras de numeros a formar: ";cin>>r;
cout<<endl;
P=1;
p=1;
a=n-r;
for(a=a+1;a<=n;a++)
{P=P*a;}
for(i=1;i<=r;i++)
{p=p*i;}
R=P/p;

cout<<R*2<<endl<<endl;
}
12. Escriba un programa que muestre los n primeros nmeros de la secuencia de Fibonacci. Demuestre
que la razn entre dos trminos consecutivos se aproxima a (1 + Y 5)/2, este nmero es conocido como
"el justo medio".
#include<iostream.h>
void main (void)
{int y,x,s,i,n,m;
cout<<endl;
cout<<"CUANTOS NUMEROS DE SECUENCIA DE FIBONACCI QUIERE QUE SE MUESTRE: ";cin>>n;
cout<<endl;
x=0;
y=1;
cout<<x<<"-"<<y<<"-";
m=n-3;
for(i=1;i<=m;i++)
{s=x+y;
x=y;
y=s;
cout<<s<<"-";
}
cout<<x+y<<endl;
cout<<endl<<endl;
}
13. Un vendedor hace n ventas. Por cada venta de hasta S/. 1000, recibe el 10% de comisin, por ventas
de hasta S/. 3000 recibe 8% sobre el monto adicional a 1000, mientras que si llega a S/. 5000 recibir el
6% sobre el adicional a 3000, por ventas de hasta" S/. 9000 recibir el 4% sobre el adicional a 5000,
finalmente recibir el 2% por toda venta superior a S/. 9000. Cul es el total de sus ventas y cunto
recibe de comisin por ellas?
#include<iostream.h>
void main (void)
{int n,i;
double c,p,s,S;
cout<<endl;
cout<<"INGRESAR EL NUMERO DE VENTAS: ";cin>>n;
s=0;
S=0;
for(i=1;i<=n;i++)
{cout<<"Introducir la cantidad de la venta "<<i<<": ";cin>>c;
if(c<=1000)
p=0.10*c;
else if(c<=3000)
p=0.08*c;
else if(c<=5000)
p=0.06*c;
else if(c<=90000)
p=0.04*c;
else
p=0.02*c;

s=s+p;
S=S+c;
}
cout<<endl<<"* EL total de sus ventas fue: "<<S<<endl<<"* Su comicion total es de: "<<s<<endl<<endl;
}
14. ada una fecha dd/mm/aaa, imprima el calendario correspondiente a ese mes.
#include<iostream.h>
void main (void)
{int dia,mes,a,maxdia,i;
cout<<"Ingresar el dia: ";cin>>dia;
cout<<"Ingresar el mes: ";cin>>mes;
cout<<"Ingresar el annio: ";cin>>a;
cout<<endl<<endl;
switch(mes) { case 1:case 3:case 5:case 7:case 8:case 10:
case 12:maxdia=31;break;
case 4:case 6:case 9:case 11:maxdia=30;break;
case 2:if(!(a%4)&&(a%100)||!(a%400))
maxdia=29;
else maxdia=28;break;
}
for(i=1;i<=maxdia;i++)
{if(i<=6)
cout<<i<<" ";
else if(i==7)
cout<<i<<endl;
else if(i<=9)
cout<<i<<" ";
else if(i<=13)
cout<<i<<" ";
else if(i==14)
cout<<i<<endl;
else if(i<=20)
cout<<i<<" ";
else if(i==21)
cout<<i<<endl;
else if(i<=27)
cout<<i<<" ";
else if(i==28)
cout<<i<<endl;
else
cout<<i<<" ";
}
cout<<endl<<endl;
}
15. Escriba un programa que genere todos los nmeros de 4 digitos en base 6 y sus equivalentes en base
10.
#include<iostream.h>
#include<math.h>
void main (void)

{int i,j,num,c,r,s;
for(i=216;i<=1295;i++)
{c=i;
s=0;
for(j=0;j<=3;j++)
{num=c%6;
c=c/6;
cout<<num<<"*"<<c<<endl;
r=num*(pow(10,j));
s=s+r;
}
cout<<s<<" = "<<i;
cout<<endl<<endl;
}
}
16. Determinar la suma de los n primeros trminos de la serie:
...
#include<iostream.h>
#include<math.h>
void main (void)
{int n,x,i;
double s,R;
cout<<"Ingrese la cantidad de terminos que se va a sumar: ";cin>>n;
cout<<"Ingrese el valor de x: ";cin>>x;
s=0;
for(i=1;i<=n;i++)
{if(i%2!=0)
{R=pow(x,i)/pow(i,2);
s=s+R;
}
else
{R=pow(x,i)/pow(i,2);
s=s-R;
}
}
cout<<"La suma hasta el termino "<<n<<" es: "<<s<<endl<<endl;
}

rocio
16 de Noviembre del 2005
por favor

49) Sol: Hacer un programa que obtenga la cantidad de los nmeros


capicas de n cifras:

encontrar la cantidad de numeros capicuas de 5


cifras multiplos de 37?
ayuddddaaaaaaaa sobre el problema
2 seguidores

1 respuesta
Notificar un abuso

Respuestas

Mejor respuesta: Hola, nmero capica es aquel que se lee igual de izquierda a derecha que
de derecha a izquierda.
Entonces lo que te piden es que el numero sea de la forma abcba y adems que sea mltiplo
de 37
Buscamos un numero abcba= 37*k,,
donde 37*k significa que el numero es mltiplo de 37.

donde a,b y c son nmeros naturales del 0 al 9, salvo que a no puede ser cero, pues entonces
ya no seria de cinco cifras.
podemos poner abcba de esta forma:
abcba= a* 10001+ b*1010+ c*100,,
dividimos las cantidades 10001, 1010 y 100 por 37, y resulta lo siguiente:
10001= 270* 37+ 11,,
1010= 27* 37+ 11,,
100= 2* 37+ 26,,
que sustituimos en la expresin de abcba:
abcba= a*(270* 37+ 11)+ b*(27* 37+ 11)+ c*(2* 37+ 26),,
reorganizamos la expresin para separar lo que a smple vista es mltiplo de 37,
abcba= a*270* 37+ b*27* 37+ c*2* 37+ [a* 11+ b* 11+c* 26]
para ser mltiplos de 37 abcba tienen que serlo todos los sumandos, la duda esta en el que
esta encerrado entre corchetes,,
(a+ b)* 11+ c* 26= 37* k,, donde k= 1, 2, 3,...
hacemos los siguiente
(a+ b)* 11+ c* 26= (11+ 26)* k,,
pasamos al primer miembro (11+ 26)* k
(a+ b- k)* 11+ (c-k)* 26= 0
solo pueden ser cero los parntesis y llegamos al sistema de ecuaciones:
a+ b- k= 0,,
c- k= 0,,
dando valores a k= 1, 2, 3,...
para k= 1,, (a+b)= 1, c= 1,, 10101.
para k= 2,, (a+b)= 2, c= 2,, 11211, 20202.
para k= 3,, (a+b)= 3, c= 3,, 12321, 21312, 30303.
para k= 4,, (a+b)= 4, c= 4,, 13431, 22422, 31413, 40404.
para k= 5,, (a+b)= 5, c= 5,, 14541, 23532, 32523, 41514, 50505.
para k= 6,, (a+b)= 6, c= 6,, 15651, 24642, 33633, 42624, 51615, 60606.
para k= 7,, (a+b)= 7, c= 7,, 16761, 25752, 34743, 43734, 52725, 61716, 70707.

para k= 8,, (a+b)= 8, c= 8,, 17871, 26862, 35853, 44844, 53835, 62826, 71817, 80808.
para k= 9,, (a+b)= 9, c= 9,, 18981, 27972, 36963, 45954, 54945, 63936, 72927, 81918, 90909.
son 45 los nmeros capicas mltiplos de 37.
Fuente(s):

Você também pode gostar