0% encontró este documento útil (0 votos)
43 vistas28 páginas

PR8 Prog

El documento presenta una serie de ejercicios de programación en C++, que incluyen la impresión de números, cálculo de promedios, extracción de dígitos, y generación de secuencias. Cada ejercicio incluye un análisis, un flujograma y el código correspondiente. Los temas abarcan desde la manipulación básica de números hasta la creación de series y estructuras de control.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd
0% encontró este documento útil (0 votos)
43 vistas28 páginas

PR8 Prog

El documento presenta una serie de ejercicios de programación en C++, que incluyen la impresión de números, cálculo de promedios, extracción de dígitos, y generación de secuencias. Cada ejercicio incluye un análisis, un flujograma y el código correspondiente. Los temas abarcan desde la manipulación básica de números hasta la creación de series y estructuras de control.
Derechos de autor
© © All Rights Reserved
Nos tomamos en serio los derechos de los contenidos. Si sospechas que se trata de tu contenido, reclámalo aquí.
Formatos disponibles
Descarga como PPTX, PDF, TXT o lee en línea desde Scribd

Práctica

Segundo Parcial

Alexander Uriona Zurita


Benjamin Merida Rojas
Jhoanes Wilfredo Alanoca Escalera
Kevin mariscal
Diego lopez Caro
1.- Imprimir los números del 1 al 500
a) Análisis
Datos de Entrada: i
Proceso: for(i,i<=500,i++) entonces cout<<i
Datos de Salida: i

b) Flujograma
c) Código

#include<iostream>
using namespace std;
int main(){
int i;
cout<<"Los numeros del 1 al 500 son :"<<endl;
for(i=1;i<=500;i=i+1)
{
cout<<i<<" ";
}
return 0;
}
6. Imprimir los números del X a Y.

Análisis
1) D.E
int x, y, i;
2) P
for ( i = x; i <= y; ++i)
3) D.S
Si el usuario ingresa x = 3 e y = 7, el programa imprimirá: 3 4 5 6 7

CODIGO

#include <iostream>
using namespace std;
int main() {
int x, y, i;
cout << "Ingresa el valor de X: ";
cin >> x;
cout << "Ingresa el valor de Y: ";
cin >> y;
for ( i = x; i <= y; ++i) {
cout << i << " ";
}
cout << endl;
return 0;
}
11.- Escribir un programa que permita calcular el promedio de calificaciones de un grupo de N
estudiantes

a) Análisis
Datos de Entrada: est,nota,suma,i,promedio
Proceso: for(i=1;i<=est;i++) (cin>>nota; suma=suma+nota;) promedio=suma/est;
Datos de Salida: promedio

b) Flujograma
c) Código
#include<iostream>
using namespace std;
int main()
{
int est,nota,suma,i,promedio;
cout<<"Ingrese el número de estudiantes"<<endl;
cin>>est;
cout<<"Ingrese las notas de respectivas de los estudiantes"<<endl;
suma=0;
for(i=1;i<=est;i++)
{
cin>>nota;
suma=suma+nota;
}
promedio=suma/est;
cout<<"El promedio de notas es : "<<promedio<<endl;
return 0;
}
[Link] un numero de más de 4 dígitos, si al ingresar no cumpliera tal condición se debe volver a pedir el
número. Extraer los dígitos y componer un nuevo numero con los dígitos pares y otro número con los dígitos
impares

Análisis
1) D.E
int num;
int num, pares = 0, impares = 0, factor = 1, digito;
2) P
do { } while (num < 1000);
while (num > 0) {
digito = num % 10;
if (digito % 2 == 0) {
pares = pares + digito * factor;
factor *= 10;
} else {
impares = impares + digito * factor;
factor *= 10;
}
num /= 10;
}
3) D.S
Si el usuario ingresa el número 123456789, el programa imprimirá:
● "Número con dígitos pares: 2468"
● "Número con dígitos impares: 13579"
CODIGO
#include <iostream>
using namespace std;
int main() {
int numero, digito, menor = 9, posicion = 0, posMenor = 0;
cout << "Ingresa un numero entero positivo con digitos diferentes entre si: ";
cin >> numero;
while (numero > 0) {
digito = numero % 10;
posicion++;
if (digito < menor) {
menor = digito;
posMenor = posicion;
}
numero /= 10;
}
cout << "El digito menor es: " << menor << " y ocupa la posicion " << posMenor
<< " contando de derecha a izquierda." << endl;
return 0;
21. Dado un numero N entero y positivo, ingresar N números y mostrar los divisores de
cada número ingresado. Mostrar el número y sus divisores.

a) Análisis
Datos de Entrada i,num,j
Proceso: for(i=1;i<=num;i++) (cout<<"Los divisores del "<<num<<" son:
for(j=1;j<=num;j++) (if(num%j==0) cout<<j<<" ";) )
Datos Salida: j

b) Flujograma
c) Código
#include<iostream>
using namespace std;
int main()
{
int i,num,j;
cout<<"Ingrese un numero"<<endl;
cin>>num;
for(i=1;i<=num;i++)
{
cout<<"Los divisores del "<<num<<" son: ";
for(j=1;j<=num;j++)
{
if(num%j==0)
{
cout<<j<<" ";
}

}
cout<<"\nIngrese un numero"<<endl;
cin>>num;
}
return 0;
}
26. Introducir un número entero positivo con sus dígitos diferentes entre sí, se pide mostrar el
dígito menor y la posición que este ocupa contando de derecha a izquierda.

a)Análisis
1) D.E
int numero, digito, menor = 9, posición = 0,
porMenor = 0;
2) P
while (numero > 0)
if (digito < menor)
3) D.S
Si el usuario ingresa el número 382746, el
programa imprimirá:
"El dígito menor es: 2 y ocupa la posición 5
contando de derecha a izquierda
#include <iostream>
using namespace std;
int main() {
int numero, digito, menor = 9, posicion = 0, posMenor = 0;
cout << "Ingresa un numero entero positivo con digitos diferentes entre si: ";
cin >> numero;
while (numero > 0) {
digito = numero % 10;
posicion++;
if (digito < menor) {
menor = digito;
posMenor = posicion;
}
numero /= 10;
}
cout << "El digito menor es: " << menor << " y ocupa la posicion " << posMenor << "
contando de derecha a izquierda." << endl;
return 0;
}
31. Leer un número entero positivo N mayor a 10 y rotar sus dígitos a la derecha
K veces.
Ejemplo: Si N = 3456 y K = 3, imprimir cada rotación: 6345, 5634, 4563
b) codigo
#include <iostream>
#include <sstream>
#include <cstdlib> // necesario para atoi
a) Análisis using namespace std;
int main() {
int n, k;
cout << "Ingrese un numero entero positivo mayor a 10: ";
Datos de Entrada: cin >> n;
cout << "Ingrese la cantidad de rotaciones a la derecha (K): ";
cin >> k;
if (n <= 10) {
n, k, i, ss, contador cout << "El numero ingresado no es mayor a 10." <<endl;
Proceso: return 1;
}
(n <= 10) stringstream ss;
while (contador < k) ss<< n;
(int i = 1; i < str_numero.length() string str_numero = [Link]();
cout << "Rotaciones:";
str_numero[i - 1] = int contador = 0;
str_numero[i] while (contador < k) {
char primer_digito = str_numero[0];
Datos Salida: for (int i = 1; i < str_numero.length(); ++i) {
str_numero[i - 1] = str_numero[i];
3456= 6345, 5634, 4563 }
str_numero[str_numero.length() - 1] = primer_digito;
cout << " " << atoi(str_numero.c_str());
contador++;
}
return 0;
}
c) Flujograma
36. Generar la siguiente sucesión para N términos: 0,1,1,2,3,5,8,13.....

ANÁLISIS
DATOS : I,n,a,b,c
PROCESO: a=0, b=1, c=a+b, a=b, b=c for(i=2;i<=n;i++)
DATOS DE SALIDA: C

CÓDIGO
#include <iostream>
using namespace std;
int main ()

{
int i,n,a,b,c;
cout<< "hasta que numero sera"<< endl;
cin>> n ;
a=0;
b=1;
for(i=1;i<=n;i++)
{

cout<< a <<" ";


c=a+b;
a=b;
b=c;
}
return 0;
}
41. Generar la siguiente sucesión para N términos: 2, 4, 6, 8, 10, 12…..

ANÁLISIS
DATOS DE ENTRADA:i,n,numero
PROCESO: while(i<=n), numero=numero + 2 , i++
DATOS DE SALIDA: “serie de numeros pares”

CÓDIGO
#include <iostream>
using namespace std;
int main ()
{
int i=1,n,numero=2;
cout<< "ingrese el numero de terminos para la serie "<< endl;
cin>> n ;
while(i<= n)
{
cout<<numero<<" ";
numero=numero+2;
i++;
}
return 0;
}
[Link] y desplegar la siguiente serie para N términos:
0,0,0,1,0,0,0,2,0,0,0,3,…

a) Análisis b) Flujograma
Datos de Entrada:
n, i
Proceso:
(int i = 1; i <= n; ++i)
if (i % 4 == 0)
Datos Salida:
0,0,0,1,0,0,0,2,0,0,0,3,…
c) Codigo
#include <iostream>
using namespace std;
int main() {
int n,i,j;
cout <<"Ingrese la cantidad de terminos para la serie: ";
cin >>n;
for (i = 1; i <= n; i++) {

for(j=1;j<=4;j++){
if (j % 4 == 0) {
cout << i << " ";
}
else
{
cout << "0 ";
}
}

}
return 0;
}
51. Realizar un programa para introducir un número entero por teclado y visualizar el siguiente
triángulo de números. EJEMPLO: N=6

ANÁLISIS
DATOS : N,i, J
PROCESO: for(i=N;i>=1;--i), for ( j = 1; j <= i * 2 - 1; j += 2)
DATO DE SALIDA: J

CÓDIGO
#include <iostream>
using namespace std;
int main ()
{
int N,i,j;
cout << "Ingrese un número entero: ";
cin >> N;
for ( i = N; i >= 1; --i)
{
for ( j = 1; j <= i * 2 - 1; j += 2)
{
cout << j << " ";
}
cout << endl;
}
return 0;
56. Calcular para los N términos: P= 1 * 3 * 5 * * N

a) Análisis b) Flujograma
Datos de Entrada:
n, i
Proceso:
(int i = 1; i <= n; i += 2)
P *= i
Datos Salida:
p
c) Codigo
#include <iostream>
using namespace std;
int main() {
int n;
long long P = 1;
cout<<"Ingrese el valor de n: ";
cin>>n;
for (int i = 1; i <= n; i += 2) {
P *= i;
}
cout << "El producto de los primeros " << n << " terminos es: " << P
<<endl;
return 0;
}
61 Escribir un programa para determinar cuánto ahorrará una persona en un año, si al
final de cada mes deposita variables cantidades de dinero; además, se requiere saber
cuánto lleva ahorrado cada mes.

ANÁLISIS: CODIGO
#include <iostream>
DATOS DE ENTRADA; using namespace std;
ENTERO: int main() {
i // Variables para almacenar el monto depositado al final de cada
DOUBLE : mes
deposito , totalAhorrado double deposito, totalAhorrado = 0;
// Bucle para cada mes del año
PROCESO : int i;
for ( i=1; i<=12; i++) {
i=1; i<=12; i++
cout << "Ingrese el monto depositado al final del mes " <<i<< ":
otalAhorrado += deposito ";
muestra el total cada mes cin >> deposito;

DATOS DE SALIDA : // Sumar el monto depositado al total ahorrado


muestra lo ahorrado totalAhorrado += deposito;
totalAhorrado
// Mostrar el total ahorrado hasta el momento
cout << "Total ahorrado hasta el mes " <<i<< ":" <<
totalAhorrado << endl;
}

// Mostrar el total ahorrado al final del año


cout << "Total ahorrado al final del año: $" << totalAhorrado <<
endl;

return 0;
}
66. Ingresar un número por teclado y realizar la sumatoria
de sus números positivos antecesores hasta ese valor.

ANALISIS

DATOS DE ENTRADA :
n ,suma=0

PROCESO

si n > 0
entoces (int i=1; i<=n; i++;
suma += i;)

DATOS DE SALIDA
suma todos los valores antes
de n y los muestra
CÓDIGO

#include <iostream>
using namespace std;
int main() {
int n,suma = 0;
//Solicitar al usuario que ingrese un número
cout<<"Ingrese un numero:"<< endl;
cin>>n;

// Verificar si el número es positivo


if (n > 0) {
// Realizar la sumatoria
for (int i=1; i<=n; i++) {
suma += i;
}
// Mostrar el resultado
cout << "La sumatoria de los numeros positivos anteriores a " <<n<< " es: "<<suma<< endl;
} else {
cout << "El numero ingresado no es positivo." << endl;
}
return 0;
}
[Link] las primeras 3 potencias de cualquier número dado

ANALISIS
#include <iostream>
DATOS DE ENTRADA : #include <cmath>
numero
using namespace std;
PROCESO :
double potencia1 = int main() {
pow(numero, 1); int numero;
double potencia2 =
pow(numero, 2); // Solicitar al usuario que ingrese un número
double potencia3 = cout << "Ingrese un numero: ";
pow(numero, 3 cin >> numero;
DATOS DE SALIDA: // Calcular las primeras tres potencias del número dado
muestra las tres primeras double potencia1 = pow(numero, 1);
potencias de double potencia2 = pow(numero, 2);
“numero” double potencia3 = pow(numero, 3);
// Mostrar las potencias
cout << "Las primeras tres potencias de " << numero << " son:" << endl;
cout << "1ra potencia: " << potencia1 << endl;
cout << "2da potencia: " << potencia2 << endl;
cout << "3ra potencia: " << potencia3 << endl;
return 0;
}
76. Realizar un programa que vaya sumando los gastos realizados en un viaje de turismo, no se sabe la cantidad
de gastos que se realizan. Finalmente, visualizar la suma total de los gastos.

ANALISIS
datos de entrada:
double:
gasto , sumaTotal
char:
continuar

PROCESO
continuar == 'S' || continuar == 's'
sumaTotal += gasto

DATOS DE SALIDA
muestra lo gastado en el viaje “sumaTotal”
codigo

CODIGO
#include <iostream>
using namespace std;
int main() {
double gasto,sumaTotal = 0;
char continuar;
do {
// Solicitar al usuario que ingrese el gasto
cout << "Ingrese el gasto realizado:";
cin >> gasto;
sumaTotal += gasto;
// usuario si desea ingresar otro gasto
cout << "¿Desea ingresar otro gasto? (S/N): ";
cin >> continuar;
}
while (continuar == 'S' || continuar == 's');
// Mostrar la suma total
cout << "La suma total de los gastos realizados en el viaje es: "
<< sumaTotal << endl;
return 0;
}

También podría gustarte