SlideShare una empresa de Scribd logo
1 de 65
Colegio de Estudios
Científicos y
Tecnológicos del Estado
de México
CECYTEM Plantel Tecámac
PRACTICAS DE C++
1° PARCIAL
PROFESOR: Rene Domínguez Escalona
ALUMNA: Lizbeth Paola Castellanos Castillo
GRUPO 303
Contenido
Resta y multiplicación............................................................................................................... 4
Cuadrado.................................................................................................................................. 6
Problema................................................................................................................................ 6
Entrada................................................................................................................................... 6
Salida...................................................................................................................................... 6
Frecuencias............................................................................................................................... 9
Sumando.................................................................................................................................11
Ordenando..............................................................................................................................13
Password.................................................................................................................................15
Descripción..........................................................................................................................15
A+B .........................................................................................................................................17
Mensaje suma.........................................................................................................................18
Día de la semana .....................................................................................................................20
Multiplicando..........................................................................................................................22
Misión Calcular Área................................................................................................................24
Bardeando...............................................................................................................................26
Matriz Cuadrada......................................................................................................................28
Área de un rectángulo..............................................................................................................30
Área de un triangulo................................................................................................................32
Descripción..........................................................................................................................32
Entrada..................................................................................................................................32
Salida.....................................................................................................................................32
Ordena alumnos......................................................................................................................34
Obtener promedio...................................................................................................................36
Bisiesto...................................................................................................................................40
Cuadro mágico.........................................................................................................................42
Descripción..........................................................................................................................42
Explicación de la salida ......................................................................................................42
Figuras Rectangulares..............................................................................................................45
Triángulo.................................................................................................................................47
Suma Triple .............................................................................................................................49
Deuda .....................................................................................................................................51
Mayor, medio y menor............................................................................................................53
Mayor- menor.........................................................................................................................56
Del 1 al 100..............................................................................................................................58
Serie numérica.....................................................................................................................60
Pares e impares.......................................................................................................................62
1-100.......................................................................................................................................64
Resta y multiplicación
Descripción
Haz un sencillo programa que lea 4 variables nombradas A, B, C y D.
Y calcula e imprima la multiplicación de la diferenciade A y B con la
diferenciade C y D. (A−B∗C−D)
Entrada
Cuatro números enteros
Salida
El producto de la diferencia con 4 variables de acuerdo al ejemplo.
Pseudocodigo
#include<iostream>
using namespace std;
int main(){
int a,b,c,d,rest,rest2,mult;
cin>>a;
cin>>b;
cin>>c;
cin>>d;
rest=a-b;
rest2=c-d;
mult=rest*rest2;
cout<<mult<<endl;
return 0;
}
Cuadrado
Descripción.
A continuación te mostramos un giro de 90 grados a la derecha de una
matriz de 2 por 2 cuyos valores son:
Matriz original
1 2
3 4
Matriz Girada 90° a la derecha
3 1
4 2
Problema
Dada una matriz cuadrada de tamaño “n”,debes hacerque tu programa
la gire 90 grados a la derecha.
Entrada
En la primera línea el valor “n” indicando el tamaño de la matriz donde
1<=n<=1000, en los siguientes “n” renglones habrán “n” valores de la
matriz separados por un espacio.
Salida
“n” renglones cada renglón con "n" valores mostrando la matriz girada
90 grados.
ConsideracionesTuprogramase evaluará con varios casos de prueba.}
Pseudocodigo
#include <iostream>
using namespace std;
main()
{
int n;
cin>>n;
int a[n][n];
if(1<=n<=1000){
for(int i=0;i<n;i++){
for(int j=0;j<n;j++){
cin>>a[i][j];
}
}cout<<endl<<endl;
for (int i=0;i<n;i++){
for(int j=n-1;j>=0;j--){
cout<<a[j][i]<<" ";
}
cout<<endl;
}
}
}
Frecuencias
Descripción
Cierta escuela realiza cuestionarios para conoceral profesorfavorito
de los alumnos. Y lo realiza de la siguiente manera; a cada profesor
se le asigna un número posteriormente a cada alumno se le pregunta
cuál es su profesorfavorito, posteriormente,se calcula una tabla de
frecuenciaindicando en cada profesorcual es la cantidad de alumnos
que lo eligieron.
Problema
Escribe un programa que ayude a la escuela a escribir la tabla de
frecuencias.
Entrada
En la primera línea el número “P” que indica la cantidad de profesores
que tiene la escueladonde 1<=P <= 100 y el número “n” que indica la
cantidad de alumnos en la escuela donde 1<=n<=1000.En la
siguiente línea habrán “n” números que representan el número de
profesorfavorito “F” de cada alumno donde 1<=F<=P.
Salida
Deberá haber “P” cantidad de líneas y en cada una dos números
separados por un guión, el primer número será el número del profesor
y el segundo número la cantidad de alumnos que lo eligieron.
Consideraciones
Tu programa se evaluará con varios casos de prueba.
Pseudocodigo
#include<iostream>
using namespace std;
main (){
int n,m;
cin>>n;
cin>>m;
int a[m];
int p[n];
for(inti=0;i<m;i++){
cin>>a[i];
}
for(intj=0;j<m;j++){
p[a[j]-1]++;
}
for(inti=0;i<n;i++){
cout<<i+1<<"-"<<p[i]<<endl;
}
return 0;
}
Sumando
Problema
Se tiene un matriz cuadrada de tamaño “n” y se requiere saber cuánto
suma cada columna.
Entrada
En el primer renglón un valor “n” indicando el tamaño de la matriz
donde 1<=n<=1000 y en los siguientes “n” renglones habrán “n”
valores correspondientes los valores de cada renglón de la matriz
donde 1<=V<= 1000.
Salida
Un renglón con “n” cantidades, cada cantidad representa la sumatoria
de cada columna de la matriz, el primer valor corresponde a la
columna 1, el segundo a la columna 2 ,... y el último valor corresponde
a la columna “n”. Consideraciones
Tu programa se evaluará con varios casos de prueba
Pseudocodigo
#include <iostream>
using namespace std;
int main (){
int n;
cin>>n;
int a[n][n];
int b[n]={0};
for (int i=0;i<n;i++)
{
for (int j=0; j<n;j++)
{
cin>>a[i][j];
b[j]+=a[i][j];
}
}
for (int j=0;j<n;j++)
{
cout<<b[j]<<" ";
}
cout<<endl;
}
Ordenando
Problema
Dada una lista de números enteros hay que determinar si la lista esta
ordenada de
menor a mayor, de mayor a menor o sencillamente no está ordenada.
Entrada
En la primera línea un valor “n” indicando la cantidad de valores que
conformala lista, donde 3<=n<=1000,en la segunda línea los “n”
números separados porun espacio,cada número está en el rango de
1 a 1,000,000,000.
Salida
Una sola línea con 3 posibles valores, si la lista está ordenada de
menor a mayor debes escribirla palabra “CRECIENTE”si la lista esta
ordenada de mayor a menor debes escribirla palabra
“DECRECIENTE”y si la lista no esta ordenada debes escribirla frase
“NO ORDENADA”.Te aseguramos que no existe un caso con
posibilidad de empate (que pueda ser creciente y decreciente).
Consideraciones
Tu programa se evaluará con varios casos de prueba
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
int n,f=0,de=0;
cin>>n;
int a[n];
for(int i=0;i<n;i++){
cin>>a[i];
}
for(int i=0;i<n;i++){
if(a[i]<a[i+1]){
f++;
}
if(a[1]>a[i+1]){
de++;
}
}
if(f==n){
cout<<"creciente";
}else if(de==n-1){
cout<<"decreciente";
}
else{
cout<<"no ordenado";
}
}
Password
Descripción
Para que un password sea seguro debe seguirlas siguientes reglas:
*Tener al menos una vocal.
*No tener dos o más caracteres consecutivos iguales.
*Tener una longitud de al menos 12 caracteres.
*Tener al menos un carácter numérico.
Problema
Escribe un que nos ayude a determinar si un password es seguro o
no.
Entrada
En la primera línea un número n indicando la cantidad de caracteres
que conforman el password, donde 1≤n≤100, en la siguiente línea n
caracteres que puedenser letras de la A a la Z, números del 1 al 9. las
letras minúsculas y mayúsculas se considerandiferentes.
Salida
Si el password es seguro de acuerdo a las reglas establecidas debes
escribirla palabra SEGURO en caso contrario debes escribirla frase
INSEGURO.
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
int n,pass;
cin>>n;
for(int i=0;i<n;i++){
cin>>pass;
}
if(n<12){
cout<<"inseguro";
}else
cout<<"seguro";
}
A+B
Descripción
Este problemaconsiste en crear un programa que sume dos números.
Entrada
Dos números A y B separados por un espacio.
Salida
Imprime A+B
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
int a,b,suma;
cin>>a;
cin>>b;
suma=a+b;
cout<<suma<<endl;
return 0;
}
Mensaje suma
Descripción
Es un problemamuy simple, para acostumbrarse a los jueces
automáticos,lo que tienes que hacer es recibir dos números y con
estos dos números los sume y muestre la salida indicando el mensaje
de la suma como se muestra en el ejemplo.
Entrada
Un número entero a y un número entero b.
Salida
Debe mostrar el siguiente mensaje donde a y b debe sustituirse por los
valores que recibe como entrada el programa y la palabra resultado
por la suma de ambos numeros, asegurate de respetar mayúsculas y
minúsculas y los espacios en blanco intermedios.
La suma de a + b es resultado
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
int a,b,suma;
cin>>a;
cin>>b;
suma=a+b;
cout<<"la suma de "<<a<<" + "<<b<<" es "<<suma<<endl;
}
Día de la semana
Descripción
Se esta programando un robot que apartir de que le indiques un
número te dira que día de la semana es pero el robottiene un
problemael puede recibir un número del del 1 al 7 y dirá el día de la
semana correspondiente(donde el 1 es el día lunes),pero si recibe un
número incorrecto el robot manda un mensaje de error, pero se ha
descubierto que el robot cuando introduces el número tiene un error
por que el programadordel robot uso la siguiente formula que se le
aplica al número que introduce 2n+1 y apartir de aqui indica el día, es
decir si el usuario introduce un 1 el resultado será Miercoles.
Entrada
1
Salida
Miércoles
Entrada
8
Salida
Error
Notas
El usuario puede introducir indefinidamente números y tu programa
debe ser capaz de controlar esto.
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
int n,dia;
cin>>n;
dia=(2*n)+1;
switch(dia)
{
case 1:cout<<"lunes"<<endl;
break;
case 2:cout<<"martes"<<endl;
break;
case 3:cout<<"miercoles"<<endl;
break;
case 4:cout<<"juevez"<<endl;
break;
case 5:cout<<"viernes"<<endl;
break;
case 6:cout<<"sabado"<<endl;
break;
case 7:cout<<"domingo"<<endl;
break;
default:cout<<"error"<<endl;
break;
}
}
Multiplicando
Descripción
Se requiere que realices un cálculo a partir de recibir un número,
entregar el producto de los números consecutivos del1 a n, por
ejemplo si recibes el 3 el resultado es 6, es decir el resultado de
multiplicar 1×2×3.
Entrada
Un único entero n.
Salida
La multiplicación de los números consecutivos del1 al n.
Límites
0≤n≤20
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
int n,fac=1;
cin>>n;
for(int i=1;i<=n;i++)
{
fac*=i;
}
cout<<fac;
}
Misión Calcular Área
Descripción
Tu misión si decidesaceptarla es encontrar el área de un cilindro, cuya
fórmula como bien sabes es 2PIr*h donde PI es 3.1416 y r: representa
el radio y h: la altura. Pero cuidado porque no estan sencillo resolver el
problemael resultado lo debes entregarcon 2 cifras decimales
después delpunto.
Entrada
1 2
Salida
12.57
Notas
El primer número que recibes es el radio y el segundo número es la
altura.
La misión aunque parecía muy sencilla, se va a complicar porque si el
primer número que lees es el -1 debes ignorarlo y en seguida leer el
radio y posteriormente la altura.
Pseudocodigo
#include <iostream>
#include <iomanip>
using namespace std;
int main()
{
int r,h;
float p=3.1416;
double c=0;
cin>>r;
if(r<0)
{
cin>>r;
}
cin>>h;
if(h<0)
{
cin>>h;
}
c=(2*p)*r*h;
std::cout << std::fixed;
std::cout << std::setprecision(2)<< c <<endl;
}
Bardeando
Descripción
Se tiene un conjunto de “n” trozos de malla ciclónica y un terreno de
perímetro “P” el terreno es cuadrado.
Problema
Debes escribirun programa que nos diga cuántos metros de malla
ciclónica nos hace falta para poderbardear el terreno.
Entrada
En la primera línea dos números “P” y "n", donde "P" representael
perímetro del terreno con un rango de valores de 1<=P <=
2,000,000,000 y“n” representa la cantidad de trozos de malla ciclónica
que tenemos,donde 1<=n<=100,000.En las siguientes “n” líneas es el
tamaño de cada trozo de malla que tenemos.La suma de todos los
trozos siempre será menor a 2147483648.
Salida
Un único valor entero indicando los metros de malla que nos hacen
falta para bardear el terreno.
Consideraciones
Tu programa se ejecutara con varios casos de prueba.
Pseudocodigo
#include<iostream>
using namespace std;
int main(){
int P,n,c,m=0,mc=0;
cin>>P>>n;
for (int i=0;i<n;i++){
cin>>c;
m+=c;
}
mc=P-m;
if(m>P){
cout<<0;
}else
cout<<mc<<endl;
}
Matriz Cuadrada
Descripción
DescripciónTenemos una matriz de “R” renglones por “C” columnas,
donde podemosenumerar las casillas de la siguiente manera, la
casilla 1,1 (renglón 1, columna 1), la casilla 1,2 (renglón 1, columna 2)
y la casilla 1,3 (renglón 1, columna 3 ) serían respectivamente las
posiciones1, 2 y 3 como se puede ver en la figura, donde la casilla 1,1
es la esquina superior izquierda y la celda “R” x “C” es la celda
ubicada en la esquina inferior derecha.
En esta cuadrícula, podemoshacer preguntas de la forma, ¿qué
número está en la casilla 1,2? y su respuestasería 2 otro ejemplo
¿qué número está en la celda 2,3? y su respuestaes 6.
Problema
Escribe un programa que dada las dimensiones de la cuadrícula
respondauna cantidad “P” de preguntas.
Entrada
En la primera línea dos valores indicando las dimensiones de la
cuadrícula separados por un espacio ‘R’ cantidad de renglones donde
1<=R<=10000 y“C” cantidad de columnas donde 1<=C<=10000,En la
tercera línea el número “P” cantidad de preguntas donde
1<=P<=10,000 y en las siguientes “P” líneas un par de coordenadas
de la forma r, c, representando las coordenadas de cada pregunta en
donde “r” indica el renglón 1<=r<=R y “c” la columna 1<=c<=C por
cada pregunta.
Salida
Por cada pregunta debe escribiren cada línea el número de casilla
que le corresponde.
Consideraciones
Tu programa se ejecutara con varios casos de prueba.
Tip
Revise por cada renglón de preguntas cuántos valores debe avanzar,
en la Entrada 1 para la primera pregunta debe avanzar 0, para la
segunda debe avanzar 3 y para la tercera pregunta debe avanzar 6.
Pseudocodigo
#include<iostream>
using namespace std;
int main(){
int r,c,p,r1;
cin>>r>>c>>p;
int a[p][2];
for( int i=0; i<p;i++){
for( int j=0; j<2;j++){
cin>>a[i][j];
}
}
for(int k=0;k<p;k++){
r=((a[k][0]-1)*c)+a[k][1];
cout<<endl<<endl;
cout<<r<<" ";
}
}
Área de un rectángulo
Descripción
Se te dará la base y la altura de un triángulo, deberás desplegarsu
área.
Entrada
Dós números b y a
Salida
La salida deberá serel área del triángulo con dos decimales después
del punto.
Pseudocodigo
#include <iostream>
using namespace std;
int main()
{
int a,b,area;
cin>>a;
cin>>b;
area=a*b;
cout<<area<<endl;
}
Área de un triangulo
Descripción
Se te dará la base y la altura de un triángulo, deberás desplegarsuárea.
Entrada
Dós números b y a
Salida
La salida deberá ser el área del triángulo con dos decimales después
del punto.
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
float b,a,area;
cin>>b;
cin>>a;
area=(b*a)/2;
cout<<endl;
cout<<area;
cout<<".00";
}
Ordena alumnos
Descripción
Los Chicos de la escuela van a recibir un premio,pero tienen que
estar formados de la calificación mayor a la menor, ya que el Profe
Rayito quiere orden y dar el mejor premio a la mejor calificación, y así
sucesivamente.
Entrada
Primero hay que pedir la cantidad de Alumnos y después las
calificaciones.
Salida
Mostrar las calificaciones ordenadas delmayor al menor.
Pseudocodigo
#include <iostream>
using namespace std;
int main (){
int perro,ironman;
cin>>perro;
int* gato=new int[perro];
for(int leon=0; leon<perro;leon++)
{
cin>>gato[leon];
}
cout<<endl<<endl;
for(int leon=0; leon<perro;leon++)
{
for (int luna=1;luna<perro; luna++)
{
if (gato[luna]>gato[luna-1])
{
ironman=gato[luna];
gato[luna]=gato[luna-1];
gato[luna-1]=ironman;
}
}
}
for(int luna=0; luna<perro; luna++)
{
cout<<gato[luna]<<" ";
}
cout<<endl<<endl;
return 0;
}
Obtener promedio
Descripción
El maestro Melquiades quiere saber el promedio de calificaciones de
su grupo, Por lo que tú como programadorle ayudaras codificando un
programita que le pida una cantidad de alumnos, y en seguidalas
calificaciones
Entrada
La cantidad de Alumnos y las "n" calificaciones en escala 0 al 100,sin
decimales.
Salida
Mostrar el promedio con dos decimales.
Límites
*No especificado
Pseudocodigo
#include<iostream>
using namespace std;
int main () {
int n,a,p=0;
cin>>n;
cout<<endl;
for(int i=0;i<n;i++){
cin>>a;
p+=a;
}
float prom=p/n;
cout<<prom<<".00"<<endl;
}
El excursionista Mayor
Descripción
Los Falmos van de excursión, pero de todo el grupo de "humanitos" el
que tiene la mayor edad es al que se le entregara el dinero para la
compradel material de campamento.Ayúdale a Mamá Falmo a saber
quién es el que tiene la mayor edad.
Entrada
Preguntar cuántos van a ir de excursión, y la edad de cada uno.
Salida
Mostrar solo la edad más grande.
Límites
Pseudocodigo
#include <iostream>
using namespace std;
main(){
int n,mayor=0,p;
cin>>n;
for(int i=1;i<=n;i++)
{
cin>>p;
if(p>mayor)
{
mayor=p;
}
}
cout<<mayor<<endl;
}
Bisiesto
Descripción
Un año es bisiesto si es divisible entre 4, a menos que sea divisible
entre 100.Sin embargo, si un año es divisible entre 100 y además es
divisible entre 400, también resulta bisiesto.
Entrada
La primera línea tendrá un número N, la cantidad de años por analizar.
Después habrá N líneas con un solo número entero, que representa el
año que tendrás que decidirsi es o no bisiesto.Todos los años serán
mayores a 1600 y menores a 3,000.
Salida
Por cada año de la entrada escribe una "S" o una "N", dependiendode
si el año es bisiesto o no respectivamente.
Límites
Pseudocodigo
#include<iostream>
using namespace std;
int main (){
int n;
cin>>n;
int* a=new int[n];
for(int i=1; i<=n;i++){
cin>>a[n];
if(a[n]>1600 && a[n]<3000){
if (a[n]%4==0){
cout<<"S"<<endl;
}else
if (a[n]%100==0 && a[n]%400==0){
cout<<"S"<<endl;
}else{
cout<<"N"<<endl;
}
}
}
}
Cuadro mágico
Descripción
Dado un tablero de tres filas por tres columnas con dígitos (1 a 9) en
cada casilla, determina si se trata de un cuadrado mágico. En un
cuadrado mágico la suma de los valores en cada fila, cada columna y
cada diagonal, siempre es 15.
Entrada
Tres líneas, en cada línea tres dígitos separados por espacios.
Salida
Imprime SI, si se trata de un cuadrado mágico, NO en caso contrario.
Explicación de la salida
6+1+8=15 7+5+3=15 2+9+4=15 6+7+2=15 1+5+9=15 8+3+4=15
6+5+4=15 8+5+2=15
Pseudocodigo
#include <iostream>
using namespace std;
main(){
int
a,b,c,d,e,f,g,h,i,suma=0,sumb=0,sumc=0,sumd=0,sume=0,sumf=0,su
mg=0,sumh=0;
cin>>a>>b>>c;
cin>>d>>e>>f;
cin>>g>>h>>i;
suma=a+b+c;
sumb=d+e+f;
sumc=g+h+i;
sumd=a+d+g;
sume=b+e+h;
sumf=c+f+i;
sumg=a+e+i;
sumh=g+e+c;
if(suma==15 && sumb==15 && sumc==15 && sumd==15 &&
sume==15 && sumf==15 && sumg==15 && sumh==15)
{
cout<<"SI"<<endl;
}
else
{
cout<<"NO"<<endl;
}
}
Figuras Rectangulares
Descripción
Tenemos un conjunto de cuadrados y rectángulos cuyos medidas de sus
diferentes lados son cantidades enteras y mayores a 1 y , si tenemos el área de la
figura, es posible que sea un cuadrado o un rectángulo.
Problema
Construye un programa que nos ayude a resolver este problema (dada el área de
una figura determinar si es cuadrado o rectángulo), la lectura la debes hacer de la
entrada estándar (teclado) y la escritura se debe hacer a la salida estándar
(pantalla).
Entrada
La primera línea contendrá un número "N" entre 1 y 1, 000, 000, 000
representando el área.
Salida
Una sola línea indicando la figura que se puede formar, si el área puede formar un
cuadrado debes imprimir la palabra “cuadrado” si el área puede formar un
rectángulo, debes imprimir la palabra “rectángulo” y si el área puede formar ambos
debe imprimir la palabra “ambos” (note no hay acentos ni mayúsculas), en caso de
que no se pueda formar un cuadrado o rectángulo escriba "ninguno"
Consideraciones
Tu programa se ejecutara con varios casos de prueba.
Tips
* Área de un cuadrado = lado * lado
* Área de un rectángulo= (base * altura)
* ¿Hasta qué valor con respecto a “N” debo probar ?
* Observa que solo debes probar desde 2 hasta raíz de "N", si un número es
divisible entre 2 significa que también es divisible entre N/2 por tanto si probamos
con el número 2, estamos al mismo tiempo probando con el numero N/2.
Pseudocodigo
#include <iostream>
#include <math.h>
using namespace std;
main() {
int n,raiz,rectangulo,cuadrado;
cin>>n;
raiz=sqrt(n);
cuadrado=raiz*raiz;
rectangulo=n/2*2;
if(rectangulo ==n && cuadrado==n){
cout<<"ambos";
}else if(rectangulo==n){
cout<<"rectangulo";
}else
if(cuadrado==n){
cout<<"cuadrado";
} else
cout<<"ninguno";
}
Triángulo
Descripción
Un triángulo es formado por 3 segmentos (convalor entero) de recta
unidos por sus extremos,sin embargo no todas las combinacionesde
3 segmentospuedenformar un triángulo.
Problema
Escribaun programa que dados 3 números que representan 3
segmentos de rectas,diga si puedenformar un triángulo rectángulo.
Entrada
En la primera línea 3 números “a”, “b” y “c” representando las
longitudes de 3 segmentosde recta en un rango de entre 1 y 32,000.
Salida
Una sola línea en donde si es posible generar un triángulo rectángulo
debes imprimir la hipotenusa, el cateto mayor y el cateto menor y si no
es posible formarun triángulo rectángulo imprime la palabra
“imposible”.
Consideraciones
Tu programa se evaluará con varios casos de prueba, para cada caso
de prueba (entrada)
Consideraciones
Tu programa se ejecutara con varios casos de prueba.
Tips
El teoremade Pitágoras la hipotenusa es igual a la raíz cuadrada de la
suma de los cuadrados de sus catetos.
¿Es necesario hacer el cálculo de la raíz cuadrada?
Pseudocodigo
#include <iostream>
using namespace std;
int main() {
float a,b,c;
cin>>a>>b>>c;
if(a<(b+c)&& b<(a+b)){
cout>>c>>" ">>b>>" ">>a>>endl;
}else
cout>>"imposible";
}
Suma Triple
Descripción
Se tiene la siguiente función f(n), formada por la suma de los tres
números anteriores.
f(1)=1
f(2)=1
f(3)=2
f(4)=4
f(5)=7
f(6)=13
f(7)=24
f(8)=44
f(9)=81
Note que f(1) = 1 ya que no tiene números anteriores, f(2)=1 ya que es
el único número anterior, f(3) tiene solo 2 números anteriores y a partir
de f(4) se da la suma de los tres números anteriores.
Problema
Escribe un programa que dado el valor de “n” escribala serie
correspondiente.
Entrada
Un solo renglón conteniendo el valor “n”donde 1<=n<=64.
Salida
Una sola línea mostrando la serie desde el número menor hasta el
mayor cada número debe estar separado por un espacio.
Tips
Un entero 32 bits es capaz de almacenar la f(n) para n=60
Pseudocodigo
#include<iostream>
using namespace std;
int main() {
int i,n,m,c,a,g,suma=0;
cin>>i>>n>>m;
for(i=0;i<m;i++)
{
cin>>c;
suma+=c;
}
a=n-suma;
g=a+i/n;
cout<<g;
return 0;
}
Deuda
Descripción
Nuestro amigo Cope tiene un problemapues le debe algunas cosas a
cierta persona con la cual no puede quedar mal, sin embargo dicha
persona es muy mala con Cope y trata de hacer que le pague más de
lo que le debe,para esto le dice que los intereses han subido y pone
mil cosas para cobrar de más pero del unico interes que se hablo fue
al momento de comenzar la transacción. Ayuda a Cope a llevar un
buen control de su deuda sabiendo cuanto debe y cuanto abona, se
sabe que originalmente se indico los intereses.
Entrada
En la primera línea tres números enteros I, N, M separados porun
espacio representando el interes acordado(número entero que
representael interes) inicialmente, número de cosas que debe Cope y
los pagos que hará respectivamente.Siguiente M líneas un entero
representando el pago de Cope.
Salida
Un entero representando como finaliza la cuenta de Cope.
Pseudocodigo
#include <iostream>
using namespace std;
int main (){
int i,n,m,c,a,g,suma=0;
cin>>i>>n>>m;
for(int i=0;i<m;i++){
cin>>c;
suma+=c;
}
a=n-suma;
g=a+i/n;
cout<<g;
Mayor, medio y menor
Descripción
Se ingresaran 3 números de los cuales se ordenaran en mayor medio
y menor.
Entrada
Tres números a, b, c.
Salida
El número mayor, el medio y el menor.
Pseudocodigo
#include<iostream>
using namespace std;
main(){
int a,b,c;
cin>>a;
cin>>b;
cin>>c;
if(a>b && b>c ){
cout<<a;
cout<<b;
cout<<c;
}else{
if(b>a && a>c){
cout<<b;
cout<<a;
cout<<c;
}else{
if(c>a && a>b){
cout<<c;
cout<<a;
cout<<b;
}else{
if(a>c && c>b){
cout<<a;
cout<<c;
cout<<b;
}else{
if(b>c && c>a){
cout<<b;
cout<<c;
cout<<a;
}else{
if(c>b && b>a){
cout<<c;
cout<<b;
cout<<a;
}
}
}
}
}
}
}
Mayor- menor
Descripción
Imprimir una lista de número del 10 al 1 usando un solo for
Salida
Números del 1-10
Consideración
El programa no tendrá datos de entrada
Pseudocodigo
#include <iostream>
using namespace std;
main (){
for(int n=10;n>=0;n--){
cout<<n<<endl;
}
}
Del 1 al 100
Descripción
Tu programa imprimirá los números del 1 al 100 de dos en dos.
Salida
Números del 1 al 100.
Consideración
Tu programa no tiene datos de entrada y se elabora con un solo if.
Pseudocodigo
#include <iostream>
using namespace std;
main (){
for(int n=1;n<100;n+=2){
cout<<n<<endl;
}
}
Serie numérica
Descripción
Tu programa imprimirá una serie numérica.
Salida
1, 3, 6, 10, 15, 21…
Pseudocodigo
#include <iostream>
using namespace std;
main (){
int j=0;
for(int n=1;n<10;n++){
j=j+n;
cout<<j<<",";
}
}
Pares e impares
Descripción
Tu programa realizara la suma de N números que tú ingreses.
Entrada
El número de números y los números.
Salida
El resultado de los N números,el número de pares ingresaros y el
número de impares.
Pseudocodigo
#include <iostream>
using namespace std;
main (){
int n,suma=0,p,par=0,imp=0;
cin>>n;
for(int i=0;i<n;i++){
cin>>p;
suma+=p;
if(p%2==0){
par+=1;
}else{
imp+=1;
}
}
cout<<"Suma:"<<suma<<endl;
cout<<"Pares:"<<par<<endl;
cout<<"Impares:"<<imp<<endl;
}
1-100
Descripción
Tu programa imprimirá los números del 1 al 100 de dos en dos.
Salida
Números del 1 al 100.
Consideración
Tu programa no tiene datos de entrada y se elabora con un solo do
while.
Pseudocodigo
#include <iostream>
using namespace std;
main (){
int i=1;
do{
cout<<i<<" "<<endl;
i+=2;
}while(i<=100);
}
Temario de c++

Más contenido relacionado

La actualidad más candente (18)

Mates 2ª e 2011
Mates 2ª e 2011Mates 2ª e 2011
Mates 2ª e 2011
 
Archivo5
Archivo5Archivo5
Archivo5
 
problemas algebraicos y de razonamiento con una incognita
problemas algebraicos y de razonamiento con una incognita problemas algebraicos y de razonamiento con una incognita
problemas algebraicos y de razonamiento con una incognita
 
5a copia
5a   copia5a   copia
5a copia
 
Programacion lineal
Programacion linealProgramacion lineal
Programacion lineal
 
Progra hojas
Progra hojas Progra hojas
Progra hojas
 
Cuadernito verano para imprimir
Cuadernito verano para imprimirCuadernito verano para imprimir
Cuadernito verano para imprimir
 
Diseño de experimentos aplus
Diseño de experimentos aplusDiseño de experimentos aplus
Diseño de experimentos aplus
 
Unidad 3 multiplicacion
Unidad 3 multiplicacionUnidad 3 multiplicacion
Unidad 3 multiplicacion
 
Números Enteros
Números EnterosNúmeros Enteros
Números Enteros
 
planteo de ecuac
 planteo de ecuac planteo de ecuac
planteo de ecuac
 
Diseño de experimentos ss14
Diseño de experimentos ss14Diseño de experimentos ss14
Diseño de experimentos ss14
 
7 ecuaciones
7 ecuaciones7 ecuaciones
7 ecuaciones
 
Omega Up
Omega UpOmega Up
Omega Up
 
Descomposición de Números Naturales
Descomposición de Números NaturalesDescomposición de Números Naturales
Descomposición de Números Naturales
 
Taller numeración racional
Taller numeración racionalTaller numeración racional
Taller numeración racional
 
Repaso de matemáticas de 6º primaria
Repaso de matemáticas de 6º primariaRepaso de matemáticas de 6º primaria
Repaso de matemáticas de 6º primaria
 
Uno se mat. potencias de 10
Uno se  mat. potencias de 10Uno se  mat. potencias de 10
Uno se mat. potencias de 10
 

Similar a Temario de c++

C++ parcial 1 oscar mendoza-303
C++ parcial 1  oscar mendoza-303C++ parcial 1  oscar mendoza-303
C++ parcial 1 oscar mendoza-303Oscar711
 
Software e.e docx
Software e.e docxSoftware e.e docx
Software e.e docxAreli1215
 
Resolución de problemas con java
Resolución de problemas con javaResolución de problemas con java
Resolución de problemas con javadiegocastro1234
 
Manual de prácticas java 2015
Manual de prácticas java 2015Manual de prácticas java 2015
Manual de prácticas java 2015Ulises_312
 
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403Evelyn Anayansi
 
Java problems
Java problemsJava problems
Java problemsNoe Lopez
 
Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402Gustavo Macias
 
Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402Gustavo Macias
 
Razonamiento matematico-manuel-covenas
Razonamiento matematico-manuel-covenasRazonamiento matematico-manuel-covenas
Razonamiento matematico-manuel-covenasErwing J V
 
89734996 razonamiento-matematico-manuel-covenas
89734996 razonamiento-matematico-manuel-covenas89734996 razonamiento-matematico-manuel-covenas
89734996 razonamiento-matematico-manuel-covenasJuan Velasco Sidesp
 
razonamiento-matematico-manuel-covenas.pdf
razonamiento-matematico-manuel-covenas.pdfrazonamiento-matematico-manuel-covenas.pdf
razonamiento-matematico-manuel-covenas.pdfHuargoDarkPer
 
20 ejercicios propuestos
20 ejercicios propuestos20 ejercicios propuestos
20 ejercicios propuestosSykesPonce
 

Similar a Temario de c++ (20)

C++ parcial 1 oscar mendoza-303
C++ parcial 1  oscar mendoza-303C++ parcial 1  oscar mendoza-303
C++ parcial 1 oscar mendoza-303
 
Practicas
PracticasPracticas
Practicas
 
Software e.e docx
Software e.e docxSoftware e.e docx
Software e.e docx
 
Proyecto
ProyectoProyecto
Proyecto
 
Programas
Programas Programas
Programas
 
Aline
AlineAline
Aline
 
Resolución de problemas con java
Resolución de problemas con javaResolución de problemas con java
Resolución de problemas con java
 
Manual de prácticas java 2015
Manual de prácticas java 2015Manual de prácticas java 2015
Manual de prácticas java 2015
 
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
Practicas java Nieto Ugalde Evelyn Anayansi Grupo:403
 
Java problems
Java problemsJava problems
Java problems
 
Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402
 
Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402Practicas java gustavo carbajal macias 402
Practicas java gustavo carbajal macias 402
 
Razonamiento matematico-manuel-covenas
Razonamiento matematico-manuel-covenasRazonamiento matematico-manuel-covenas
Razonamiento matematico-manuel-covenas
 
89734996 razonamiento-matematico-manuel-covenas
89734996 razonamiento-matematico-manuel-covenas89734996 razonamiento-matematico-manuel-covenas
89734996 razonamiento-matematico-manuel-covenas
 
Lenguaje c neo
Lenguaje c neoLenguaje c neo
Lenguaje c neo
 
razonamiento-matematico-manuel-covenas.pdf
razonamiento-matematico-manuel-covenas.pdfrazonamiento-matematico-manuel-covenas.pdf
razonamiento-matematico-manuel-covenas.pdf
 
Cesar lenguaje c_
Cesar lenguaje c_Cesar lenguaje c_
Cesar lenguaje c_
 
Presentación Capítulo #2
Presentación Capítulo #2Presentación Capítulo #2
Presentación Capítulo #2
 
20 ejercicios propuestos
20 ejercicios propuestos20 ejercicios propuestos
20 ejercicios propuestos
 
Manual C-C++ Pablo
Manual C-C++ PabloManual C-C++ Pablo
Manual C-C++ Pablo
 

Temario de c++

  • 1. Colegio de Estudios Científicos y Tecnológicos del Estado de México CECYTEM Plantel Tecámac PRACTICAS DE C++ 1° PARCIAL PROFESOR: Rene Domínguez Escalona ALUMNA: Lizbeth Paola Castellanos Castillo GRUPO 303
  • 2.
  • 3. Contenido Resta y multiplicación............................................................................................................... 4 Cuadrado.................................................................................................................................. 6 Problema................................................................................................................................ 6 Entrada................................................................................................................................... 6 Salida...................................................................................................................................... 6 Frecuencias............................................................................................................................... 9 Sumando.................................................................................................................................11 Ordenando..............................................................................................................................13 Password.................................................................................................................................15 Descripción..........................................................................................................................15 A+B .........................................................................................................................................17 Mensaje suma.........................................................................................................................18 Día de la semana .....................................................................................................................20 Multiplicando..........................................................................................................................22 Misión Calcular Área................................................................................................................24 Bardeando...............................................................................................................................26 Matriz Cuadrada......................................................................................................................28 Área de un rectángulo..............................................................................................................30 Área de un triangulo................................................................................................................32 Descripción..........................................................................................................................32 Entrada..................................................................................................................................32 Salida.....................................................................................................................................32 Ordena alumnos......................................................................................................................34 Obtener promedio...................................................................................................................36 Bisiesto...................................................................................................................................40 Cuadro mágico.........................................................................................................................42 Descripción..........................................................................................................................42 Explicación de la salida ......................................................................................................42 Figuras Rectangulares..............................................................................................................45 Triángulo.................................................................................................................................47 Suma Triple .............................................................................................................................49 Deuda .....................................................................................................................................51
  • 4. Mayor, medio y menor............................................................................................................53 Mayor- menor.........................................................................................................................56 Del 1 al 100..............................................................................................................................58 Serie numérica.....................................................................................................................60 Pares e impares.......................................................................................................................62 1-100.......................................................................................................................................64 Resta y multiplicación Descripción Haz un sencillo programa que lea 4 variables nombradas A, B, C y D. Y calcula e imprima la multiplicación de la diferenciade A y B con la diferenciade C y D. (A−B∗C−D) Entrada Cuatro números enteros Salida El producto de la diferencia con 4 variables de acuerdo al ejemplo. Pseudocodigo #include<iostream> using namespace std; int main(){ int a,b,c,d,rest,rest2,mult; cin>>a; cin>>b; cin>>c; cin>>d; rest=a-b; rest2=c-d; mult=rest*rest2; cout<<mult<<endl; return 0;
  • 5. }
  • 6. Cuadrado Descripción. A continuación te mostramos un giro de 90 grados a la derecha de una matriz de 2 por 2 cuyos valores son: Matriz original 1 2 3 4 Matriz Girada 90° a la derecha 3 1 4 2 Problema Dada una matriz cuadrada de tamaño “n”,debes hacerque tu programa la gire 90 grados a la derecha. Entrada En la primera línea el valor “n” indicando el tamaño de la matriz donde 1<=n<=1000, en los siguientes “n” renglones habrán “n” valores de la matriz separados por un espacio. Salida “n” renglones cada renglón con "n" valores mostrando la matriz girada 90 grados. ConsideracionesTuprogramase evaluará con varios casos de prueba.} Pseudocodigo #include <iostream> using namespace std; main() {
  • 7. int n; cin>>n; int a[n][n]; if(1<=n<=1000){ for(int i=0;i<n;i++){ for(int j=0;j<n;j++){ cin>>a[i][j]; } }cout<<endl<<endl; for (int i=0;i<n;i++){ for(int j=n-1;j>=0;j--){ cout<<a[j][i]<<" "; } cout<<endl; } } }
  • 8.
  • 9. Frecuencias Descripción Cierta escuela realiza cuestionarios para conoceral profesorfavorito de los alumnos. Y lo realiza de la siguiente manera; a cada profesor se le asigna un número posteriormente a cada alumno se le pregunta cuál es su profesorfavorito, posteriormente,se calcula una tabla de frecuenciaindicando en cada profesorcual es la cantidad de alumnos que lo eligieron. Problema Escribe un programa que ayude a la escuela a escribir la tabla de frecuencias. Entrada En la primera línea el número “P” que indica la cantidad de profesores que tiene la escueladonde 1<=P <= 100 y el número “n” que indica la cantidad de alumnos en la escuela donde 1<=n<=1000.En la siguiente línea habrán “n” números que representan el número de profesorfavorito “F” de cada alumno donde 1<=F<=P. Salida Deberá haber “P” cantidad de líneas y en cada una dos números separados por un guión, el primer número será el número del profesor y el segundo número la cantidad de alumnos que lo eligieron. Consideraciones Tu programa se evaluará con varios casos de prueba. Pseudocodigo #include<iostream> using namespace std; main (){ int n,m;
  • 11. Sumando Problema Se tiene un matriz cuadrada de tamaño “n” y se requiere saber cuánto suma cada columna. Entrada En el primer renglón un valor “n” indicando el tamaño de la matriz donde 1<=n<=1000 y en los siguientes “n” renglones habrán “n” valores correspondientes los valores de cada renglón de la matriz donde 1<=V<= 1000. Salida Un renglón con “n” cantidades, cada cantidad representa la sumatoria de cada columna de la matriz, el primer valor corresponde a la columna 1, el segundo a la columna 2 ,... y el último valor corresponde a la columna “n”. Consideraciones Tu programa se evaluará con varios casos de prueba Pseudocodigo #include <iostream> using namespace std; int main (){ int n; cin>>n; int a[n][n]; int b[n]={0}; for (int i=0;i<n;i++) { for (int j=0; j<n;j++) { cin>>a[i][j];
  • 13. Ordenando Problema Dada una lista de números enteros hay que determinar si la lista esta ordenada de menor a mayor, de mayor a menor o sencillamente no está ordenada. Entrada En la primera línea un valor “n” indicando la cantidad de valores que conformala lista, donde 3<=n<=1000,en la segunda línea los “n” números separados porun espacio,cada número está en el rango de 1 a 1,000,000,000. Salida Una sola línea con 3 posibles valores, si la lista está ordenada de menor a mayor debes escribirla palabra “CRECIENTE”si la lista esta ordenada de mayor a menor debes escribirla palabra “DECRECIENTE”y si la lista no esta ordenada debes escribirla frase “NO ORDENADA”.Te aseguramos que no existe un caso con posibilidad de empate (que pueda ser creciente y decreciente). Consideraciones Tu programa se evaluará con varios casos de prueba Pseudocodigo #include <iostream> using namespace std; int main() { int n,f=0,de=0; cin>>n; int a[n]; for(int i=0;i<n;i++){ cin>>a[i]; } for(int i=0;i<n;i++){ if(a[i]<a[i+1]){ f++; } if(a[1]>a[i+1]){
  • 15. Password Descripción Para que un password sea seguro debe seguirlas siguientes reglas: *Tener al menos una vocal. *No tener dos o más caracteres consecutivos iguales. *Tener una longitud de al menos 12 caracteres. *Tener al menos un carácter numérico. Problema Escribe un que nos ayude a determinar si un password es seguro o no. Entrada En la primera línea un número n indicando la cantidad de caracteres que conforman el password, donde 1≤n≤100, en la siguiente línea n caracteres que puedenser letras de la A a la Z, números del 1 al 9. las letras minúsculas y mayúsculas se considerandiferentes. Salida Si el password es seguro de acuerdo a las reglas establecidas debes escribirla palabra SEGURO en caso contrario debes escribirla frase INSEGURO. Pseudocodigo #include <iostream> using namespace std; int main() { int n,pass; cin>>n; for(int i=0;i<n;i++){ cin>>pass; } if(n<12){ cout<<"inseguro"; }else cout<<"seguro"; }
  • 16.
  • 17. A+B Descripción Este problemaconsiste en crear un programa que sume dos números. Entrada Dos números A y B separados por un espacio. Salida Imprime A+B Pseudocodigo #include <iostream> using namespace std; int main() { int a,b,suma; cin>>a; cin>>b; suma=a+b; cout<<suma<<endl; return 0; }
  • 18. Mensaje suma Descripción Es un problemamuy simple, para acostumbrarse a los jueces automáticos,lo que tienes que hacer es recibir dos números y con estos dos números los sume y muestre la salida indicando el mensaje de la suma como se muestra en el ejemplo. Entrada Un número entero a y un número entero b. Salida Debe mostrar el siguiente mensaje donde a y b debe sustituirse por los valores que recibe como entrada el programa y la palabra resultado por la suma de ambos numeros, asegurate de respetar mayúsculas y minúsculas y los espacios en blanco intermedios. La suma de a + b es resultado Pseudocodigo #include <iostream> using namespace std; int main() { int a,b,suma; cin>>a; cin>>b; suma=a+b; cout<<"la suma de "<<a<<" + "<<b<<" es "<<suma<<endl; }
  • 19.
  • 20. Día de la semana Descripción Se esta programando un robot que apartir de que le indiques un número te dira que día de la semana es pero el robottiene un problemael puede recibir un número del del 1 al 7 y dirá el día de la semana correspondiente(donde el 1 es el día lunes),pero si recibe un número incorrecto el robot manda un mensaje de error, pero se ha descubierto que el robot cuando introduces el número tiene un error por que el programadordel robot uso la siguiente formula que se le aplica al número que introduce 2n+1 y apartir de aqui indica el día, es decir si el usuario introduce un 1 el resultado será Miercoles. Entrada 1 Salida Miércoles Entrada 8 Salida Error Notas El usuario puede introducir indefinidamente números y tu programa debe ser capaz de controlar esto. Pseudocodigo #include <iostream> using namespace std; int main() { int n,dia; cin>>n; dia=(2*n)+1; switch(dia) { case 1:cout<<"lunes"<<endl; break;
  • 21. case 2:cout<<"martes"<<endl; break; case 3:cout<<"miercoles"<<endl; break; case 4:cout<<"juevez"<<endl; break; case 5:cout<<"viernes"<<endl; break; case 6:cout<<"sabado"<<endl; break; case 7:cout<<"domingo"<<endl; break; default:cout<<"error"<<endl; break; } }
  • 22. Multiplicando Descripción Se requiere que realices un cálculo a partir de recibir un número, entregar el producto de los números consecutivos del1 a n, por ejemplo si recibes el 3 el resultado es 6, es decir el resultado de multiplicar 1×2×3. Entrada Un único entero n. Salida La multiplicación de los números consecutivos del1 al n. Límites 0≤n≤20 Pseudocodigo #include <iostream> using namespace std; int main() { int n,fac=1; cin>>n; for(int i=1;i<=n;i++) { fac*=i; } cout<<fac; }
  • 23.
  • 24. Misión Calcular Área Descripción Tu misión si decidesaceptarla es encontrar el área de un cilindro, cuya fórmula como bien sabes es 2PIr*h donde PI es 3.1416 y r: representa el radio y h: la altura. Pero cuidado porque no estan sencillo resolver el problemael resultado lo debes entregarcon 2 cifras decimales después delpunto. Entrada 1 2 Salida 12.57 Notas El primer número que recibes es el radio y el segundo número es la altura. La misión aunque parecía muy sencilla, se va a complicar porque si el primer número que lees es el -1 debes ignorarlo y en seguida leer el radio y posteriormente la altura. Pseudocodigo #include <iostream> #include <iomanip> using namespace std; int main() { int r,h; float p=3.1416; double c=0; cin>>r; if(r<0) { cin>>r; } cin>>h; if(h<0) {
  • 25. cin>>h; } c=(2*p)*r*h; std::cout << std::fixed; std::cout << std::setprecision(2)<< c <<endl; }
  • 26. Bardeando Descripción Se tiene un conjunto de “n” trozos de malla ciclónica y un terreno de perímetro “P” el terreno es cuadrado. Problema Debes escribirun programa que nos diga cuántos metros de malla ciclónica nos hace falta para poderbardear el terreno. Entrada En la primera línea dos números “P” y "n", donde "P" representael perímetro del terreno con un rango de valores de 1<=P <= 2,000,000,000 y“n” representa la cantidad de trozos de malla ciclónica que tenemos,donde 1<=n<=100,000.En las siguientes “n” líneas es el tamaño de cada trozo de malla que tenemos.La suma de todos los trozos siempre será menor a 2147483648. Salida Un único valor entero indicando los metros de malla que nos hacen falta para bardear el terreno. Consideraciones Tu programa se ejecutara con varios casos de prueba. Pseudocodigo #include<iostream> using namespace std; int main(){ int P,n,c,m=0,mc=0; cin>>P>>n; for (int i=0;i<n;i++){ cin>>c; m+=c; } mc=P-m; if(m>P){ cout<<0; }else cout<<mc<<endl;
  • 27. }
  • 28. Matriz Cuadrada Descripción DescripciónTenemos una matriz de “R” renglones por “C” columnas, donde podemosenumerar las casillas de la siguiente manera, la casilla 1,1 (renglón 1, columna 1), la casilla 1,2 (renglón 1, columna 2) y la casilla 1,3 (renglón 1, columna 3 ) serían respectivamente las posiciones1, 2 y 3 como se puede ver en la figura, donde la casilla 1,1 es la esquina superior izquierda y la celda “R” x “C” es la celda ubicada en la esquina inferior derecha. En esta cuadrícula, podemoshacer preguntas de la forma, ¿qué número está en la casilla 1,2? y su respuestasería 2 otro ejemplo ¿qué número está en la celda 2,3? y su respuestaes 6. Problema Escribe un programa que dada las dimensiones de la cuadrícula respondauna cantidad “P” de preguntas. Entrada En la primera línea dos valores indicando las dimensiones de la cuadrícula separados por un espacio ‘R’ cantidad de renglones donde 1<=R<=10000 y“C” cantidad de columnas donde 1<=C<=10000,En la tercera línea el número “P” cantidad de preguntas donde 1<=P<=10,000 y en las siguientes “P” líneas un par de coordenadas de la forma r, c, representando las coordenadas de cada pregunta en donde “r” indica el renglón 1<=r<=R y “c” la columna 1<=c<=C por cada pregunta. Salida Por cada pregunta debe escribiren cada línea el número de casilla que le corresponde. Consideraciones Tu programa se ejecutara con varios casos de prueba.
  • 29. Tip Revise por cada renglón de preguntas cuántos valores debe avanzar, en la Entrada 1 para la primera pregunta debe avanzar 0, para la segunda debe avanzar 3 y para la tercera pregunta debe avanzar 6. Pseudocodigo #include<iostream> using namespace std; int main(){ int r,c,p,r1; cin>>r>>c>>p; int a[p][2]; for( int i=0; i<p;i++){ for( int j=0; j<2;j++){ cin>>a[i][j]; } } for(int k=0;k<p;k++){ r=((a[k][0]-1)*c)+a[k][1]; cout<<endl<<endl; cout<<r<<" "; } }
  • 30. Área de un rectángulo Descripción Se te dará la base y la altura de un triángulo, deberás desplegarsu área. Entrada Dós números b y a Salida La salida deberá serel área del triángulo con dos decimales después del punto. Pseudocodigo #include <iostream> using namespace std; int main() { int a,b,area; cin>>a; cin>>b; area=a*b; cout<<area<<endl; }
  • 31.
  • 32. Área de un triangulo Descripción Se te dará la base y la altura de un triángulo, deberás desplegarsuárea. Entrada Dós números b y a Salida La salida deberá ser el área del triángulo con dos decimales después del punto. Pseudocodigo #include <iostream> using namespace std; int main() { float b,a,area; cin>>b; cin>>a; area=(b*a)/2; cout<<endl; cout<<area; cout<<".00"; }
  • 33.
  • 34. Ordena alumnos Descripción Los Chicos de la escuela van a recibir un premio,pero tienen que estar formados de la calificación mayor a la menor, ya que el Profe Rayito quiere orden y dar el mejor premio a la mejor calificación, y así sucesivamente. Entrada Primero hay que pedir la cantidad de Alumnos y después las calificaciones. Salida Mostrar las calificaciones ordenadas delmayor al menor. Pseudocodigo #include <iostream> using namespace std; int main (){ int perro,ironman; cin>>perro; int* gato=new int[perro]; for(int leon=0; leon<perro;leon++) { cin>>gato[leon]; } cout<<endl<<endl; for(int leon=0; leon<perro;leon++) { for (int luna=1;luna<perro; luna++) { if (gato[luna]>gato[luna-1]) { ironman=gato[luna]; gato[luna]=gato[luna-1]; gato[luna-1]=ironman; } } }
  • 35. for(int luna=0; luna<perro; luna++) { cout<<gato[luna]<<" "; } cout<<endl<<endl; return 0; }
  • 36. Obtener promedio Descripción El maestro Melquiades quiere saber el promedio de calificaciones de su grupo, Por lo que tú como programadorle ayudaras codificando un programita que le pida una cantidad de alumnos, y en seguidalas calificaciones Entrada La cantidad de Alumnos y las "n" calificaciones en escala 0 al 100,sin decimales. Salida Mostrar el promedio con dos decimales. Límites *No especificado Pseudocodigo #include<iostream> using namespace std; int main () { int n,a,p=0; cin>>n; cout<<endl; for(int i=0;i<n;i++){ cin>>a; p+=a; } float prom=p/n;
  • 38. El excursionista Mayor Descripción Los Falmos van de excursión, pero de todo el grupo de "humanitos" el que tiene la mayor edad es al que se le entregara el dinero para la compradel material de campamento.Ayúdale a Mamá Falmo a saber quién es el que tiene la mayor edad. Entrada Preguntar cuántos van a ir de excursión, y la edad de cada uno. Salida Mostrar solo la edad más grande. Límites Pseudocodigo #include <iostream> using namespace std; main(){ int n,mayor=0,p; cin>>n; for(int i=1;i<=n;i++) { cin>>p; if(p>mayor) { mayor=p; } } cout<<mayor<<endl; }
  • 39.
  • 40. Bisiesto Descripción Un año es bisiesto si es divisible entre 4, a menos que sea divisible entre 100.Sin embargo, si un año es divisible entre 100 y además es divisible entre 400, también resulta bisiesto. Entrada La primera línea tendrá un número N, la cantidad de años por analizar. Después habrá N líneas con un solo número entero, que representa el año que tendrás que decidirsi es o no bisiesto.Todos los años serán mayores a 1600 y menores a 3,000. Salida Por cada año de la entrada escribe una "S" o una "N", dependiendode si el año es bisiesto o no respectivamente. Límites Pseudocodigo #include<iostream> using namespace std; int main (){ int n; cin>>n; int* a=new int[n]; for(int i=1; i<=n;i++){ cin>>a[n];
  • 41. if(a[n]>1600 && a[n]<3000){ if (a[n]%4==0){ cout<<"S"<<endl; }else if (a[n]%100==0 && a[n]%400==0){ cout<<"S"<<endl; }else{ cout<<"N"<<endl; } } } }
  • 42. Cuadro mágico Descripción Dado un tablero de tres filas por tres columnas con dígitos (1 a 9) en cada casilla, determina si se trata de un cuadrado mágico. En un cuadrado mágico la suma de los valores en cada fila, cada columna y cada diagonal, siempre es 15. Entrada Tres líneas, en cada línea tres dígitos separados por espacios. Salida Imprime SI, si se trata de un cuadrado mágico, NO en caso contrario. Explicación de la salida 6+1+8=15 7+5+3=15 2+9+4=15 6+7+2=15 1+5+9=15 8+3+4=15 6+5+4=15 8+5+2=15 Pseudocodigo #include <iostream> using namespace std; main(){ int a,b,c,d,e,f,g,h,i,suma=0,sumb=0,sumc=0,sumd=0,sume=0,sumf=0,su mg=0,sumh=0; cin>>a>>b>>c; cin>>d>>e>>f;
  • 43. cin>>g>>h>>i; suma=a+b+c; sumb=d+e+f; sumc=g+h+i; sumd=a+d+g; sume=b+e+h; sumf=c+f+i; sumg=a+e+i; sumh=g+e+c; if(suma==15 && sumb==15 && sumc==15 && sumd==15 && sume==15 && sumf==15 && sumg==15 && sumh==15) { cout<<"SI"<<endl; } else { cout<<"NO"<<endl; } }
  • 44.
  • 45. Figuras Rectangulares Descripción Tenemos un conjunto de cuadrados y rectángulos cuyos medidas de sus diferentes lados son cantidades enteras y mayores a 1 y , si tenemos el área de la figura, es posible que sea un cuadrado o un rectángulo. Problema Construye un programa que nos ayude a resolver este problema (dada el área de una figura determinar si es cuadrado o rectángulo), la lectura la debes hacer de la entrada estándar (teclado) y la escritura se debe hacer a la salida estándar (pantalla). Entrada La primera línea contendrá un número "N" entre 1 y 1, 000, 000, 000 representando el área. Salida Una sola línea indicando la figura que se puede formar, si el área puede formar un cuadrado debes imprimir la palabra “cuadrado” si el área puede formar un rectángulo, debes imprimir la palabra “rectángulo” y si el área puede formar ambos debe imprimir la palabra “ambos” (note no hay acentos ni mayúsculas), en caso de que no se pueda formar un cuadrado o rectángulo escriba "ninguno" Consideraciones Tu programa se ejecutara con varios casos de prueba. Tips * Área de un cuadrado = lado * lado * Área de un rectángulo= (base * altura) * ¿Hasta qué valor con respecto a “N” debo probar ? * Observa que solo debes probar desde 2 hasta raíz de "N", si un número es divisible entre 2 significa que también es divisible entre N/2 por tanto si probamos con el número 2, estamos al mismo tiempo probando con el numero N/2.
  • 46. Pseudocodigo #include <iostream> #include <math.h> using namespace std; main() { int n,raiz,rectangulo,cuadrado; cin>>n; raiz=sqrt(n); cuadrado=raiz*raiz; rectangulo=n/2*2; if(rectangulo ==n && cuadrado==n){ cout<<"ambos"; }else if(rectangulo==n){ cout<<"rectangulo"; }else if(cuadrado==n){ cout<<"cuadrado"; } else cout<<"ninguno"; }
  • 47. Triángulo Descripción Un triángulo es formado por 3 segmentos (convalor entero) de recta unidos por sus extremos,sin embargo no todas las combinacionesde 3 segmentospuedenformar un triángulo. Problema Escribaun programa que dados 3 números que representan 3 segmentos de rectas,diga si puedenformar un triángulo rectángulo. Entrada En la primera línea 3 números “a”, “b” y “c” representando las longitudes de 3 segmentosde recta en un rango de entre 1 y 32,000. Salida Una sola línea en donde si es posible generar un triángulo rectángulo debes imprimir la hipotenusa, el cateto mayor y el cateto menor y si no es posible formarun triángulo rectángulo imprime la palabra “imposible”. Consideraciones Tu programa se evaluará con varios casos de prueba, para cada caso de prueba (entrada) Consideraciones Tu programa se ejecutara con varios casos de prueba. Tips El teoremade Pitágoras la hipotenusa es igual a la raíz cuadrada de la suma de los cuadrados de sus catetos. ¿Es necesario hacer el cálculo de la raíz cuadrada? Pseudocodigo #include <iostream> using namespace std; int main() { float a,b,c; cin>>a>>b>>c; if(a<(b+c)&& b<(a+b)){
  • 49. Suma Triple Descripción Se tiene la siguiente función f(n), formada por la suma de los tres números anteriores. f(1)=1 f(2)=1 f(3)=2 f(4)=4 f(5)=7 f(6)=13 f(7)=24 f(8)=44 f(9)=81 Note que f(1) = 1 ya que no tiene números anteriores, f(2)=1 ya que es el único número anterior, f(3) tiene solo 2 números anteriores y a partir de f(4) se da la suma de los tres números anteriores. Problema Escribe un programa que dado el valor de “n” escribala serie correspondiente. Entrada Un solo renglón conteniendo el valor “n”donde 1<=n<=64. Salida Una sola línea mostrando la serie desde el número menor hasta el mayor cada número debe estar separado por un espacio. Tips Un entero 32 bits es capaz de almacenar la f(n) para n=60 Pseudocodigo #include<iostream> using namespace std; int main() { int i,n,m,c,a,g,suma=0; cin>>i>>n>>m; for(i=0;i<m;i++) {
  • 51. Deuda Descripción Nuestro amigo Cope tiene un problemapues le debe algunas cosas a cierta persona con la cual no puede quedar mal, sin embargo dicha persona es muy mala con Cope y trata de hacer que le pague más de lo que le debe,para esto le dice que los intereses han subido y pone mil cosas para cobrar de más pero del unico interes que se hablo fue al momento de comenzar la transacción. Ayuda a Cope a llevar un buen control de su deuda sabiendo cuanto debe y cuanto abona, se sabe que originalmente se indico los intereses. Entrada En la primera línea tres números enteros I, N, M separados porun espacio representando el interes acordado(número entero que representael interes) inicialmente, número de cosas que debe Cope y los pagos que hará respectivamente.Siguiente M líneas un entero representando el pago de Cope. Salida Un entero representando como finaliza la cuenta de Cope. Pseudocodigo #include <iostream> using namespace std; int main (){ int i,n,m,c,a,g,suma=0; cin>>i>>n>>m; for(int i=0;i<m;i++){ cin>>c; suma+=c; } a=n-suma; g=a+i/n; cout<<g;
  • 52.
  • 53. Mayor, medio y menor Descripción Se ingresaran 3 números de los cuales se ordenaran en mayor medio y menor. Entrada Tres números a, b, c. Salida El número mayor, el medio y el menor. Pseudocodigo #include<iostream> using namespace std; main(){ int a,b,c; cin>>a; cin>>b; cin>>c; if(a>b && b>c ){ cout<<a; cout<<b; cout<<c; }else{ if(b>a && a>c){ cout<<b; cout<<a; cout<<c;
  • 54. }else{ if(c>a && a>b){ cout<<c; cout<<a; cout<<b; }else{ if(a>c && c>b){ cout<<a; cout<<c; cout<<b; }else{ if(b>c && c>a){ cout<<b; cout<<c; cout<<a; }else{ if(c>b && b>a){ cout<<c; cout<<b; cout<<a; } } } } }
  • 55. } }
  • 56. Mayor- menor Descripción Imprimir una lista de número del 10 al 1 usando un solo for Salida Números del 1-10 Consideración El programa no tendrá datos de entrada Pseudocodigo #include <iostream> using namespace std; main (){ for(int n=10;n>=0;n--){ cout<<n<<endl; } }
  • 57.
  • 58. Del 1 al 100 Descripción Tu programa imprimirá los números del 1 al 100 de dos en dos. Salida Números del 1 al 100. Consideración Tu programa no tiene datos de entrada y se elabora con un solo if. Pseudocodigo #include <iostream> using namespace std; main (){ for(int n=1;n<100;n+=2){ cout<<n<<endl; } }
  • 59.
  • 60. Serie numérica Descripción Tu programa imprimirá una serie numérica. Salida 1, 3, 6, 10, 15, 21… Pseudocodigo #include <iostream> using namespace std; main (){ int j=0; for(int n=1;n<10;n++){ j=j+n; cout<<j<<","; } }
  • 61.
  • 62. Pares e impares Descripción Tu programa realizara la suma de N números que tú ingreses. Entrada El número de números y los números. Salida El resultado de los N números,el número de pares ingresaros y el número de impares. Pseudocodigo #include <iostream> using namespace std; main (){ int n,suma=0,p,par=0,imp=0; cin>>n; for(int i=0;i<n;i++){ cin>>p; suma+=p; if(p%2==0){ par+=1; }else{ imp+=1; }
  • 64. 1-100 Descripción Tu programa imprimirá los números del 1 al 100 de dos en dos. Salida Números del 1 al 100. Consideración Tu programa no tiene datos de entrada y se elabora con un solo do while. Pseudocodigo #include <iostream> using namespace std; main (){ int i=1; do{ cout<<i<<" "<<endl; i+=2; }while(i<=100); }