Computing">
Nothing Special   »   [go: up one dir, main page]

Tarea 2 Programacion PDF

Descargar como pdf o txt
Descargar como pdf o txt
Está en la página 1de 13

REPÚBLICA DE PANAMÁ

MINISTERIO DE EDUCACIÓN
UNIVERSIDAD LATINA DE PANAMÁ
FACULTAD DE INGENIERÍA

CURSO: PROGRAMACIÓN PARA INGENIEROS

Tarea #2 Grupal

INTEGRANTES:

Kevin Cabrera 8-973-2480


Andrea Aguilar 8-957-1163
Matthew Visuete 8-887-1735
Samir Nabha 8-987-197
Ivan Castillo 8-973-1896

Profesora:
Omaira Valdés Jiménez

Fecha de entrega:
Panamá, 8 de febrero de 2021
Ejercicios asignados del 1.3

1. Determine un procedimiento paso a paso (lista de pasos) para hacer las


siguientes tareas. (Nota: No hay una sola respuesta correcta para cada una de
estas tareas. El ejercicio está diseñado para brindarle práctica en convertir
comandos tipo heurístico en algoritmos equivalentes y hacer el cambio entre los
procesos de pensamiento implicados en los dos tipos de pensamiento.)

a. Arreglar una llanta desinflada:


Paso #1: Apagar el carro y poner el freno de mano.
Paso #2: Aflojar las tuercas.
Paso #3: Coger el gato y levantar el carro con él.
Paso #4: Terminar de remover las tuercas.
Paso #5: Sacar la llanta afectada.
Paso #6: Reemplazar la llanta afectada con una nueva.
Paso #7: Alinear las entradas en el rin de la llanta nueva con las roscas para
sujetar las tuercas.
Paso #8: Aprietas las tuercas.
Paso #9: Con el gato baja el carro.
Paso #10: Guardar el gato y la llanta afectada para parchearla en un taller.
Paso #11: Fin.

b. Hacer una llamada telefónica ​:


Paso #1: desbloquear el teléfono.
Paso #2: buscar el icono de llamada en el teléfono.
Paso #3: Buscar el teclado.
Paso #4: Marcar el número al que quieras llamar.
Paso #5: Una vez hayas marcado todo el número, tocar el botón verde para
realizar tu llamada.
Paso #6: Hablar por teléfono el tiempo que desees.
Paso #7: Una vez terminada tu llamada, tocar el icono rojo para finalizar la
misma.
Paso #8: Al finalizar tu llamada, bloquear el teléfono y continuar con los que
estés haciendo.
Paso #9: Fin.

c. Iniciar sesión en una computadora:


Paso #1: Presionar el botón de encendido para prender la computadora.
Paso #2: Esperar a que cargue el sistema.
Paso #3: Una vez cargado, el sistema te pedirá un “Nombre de Usuario”.
Paso #4: Al ingresar el “Nombre de Usuario”, el sistema te pedirá una clave.
Paso #5: Ingresas la clave.
Paso #6: El sistema verifica si la clave es verdadera.
Paso #7: Si el sistema verifica que dicha clave es válida, ya estás listo(a).
Paso #7.1:. Si el sistema verifica la clave, y es inválida, asegúrate de que esté
bien escrita.
Paso #8: Fin.

d. Asar un pavo
Paso #1: Sazona tu pavo.
Paso #2: Prepara un fuego de configuración paralela.
Paso #3: Agregale sabor ahumado a la madera.
Paso #4: Rostiza tu pavo.
Paso#5: Verifica si el pavo está listo.
Paso #6: Déjalo reposar.
Paso #7: Cortalo.
Paso #8: Sirvete y disfruta.
Paso #9: Fin.

2 .¿Los procedimientos que desarrolló en el ejercicio 1 son algoritmos? Discuta por qué
sí o por qué no.

R./ Si, los procedimientos que desarrollamos en el ejercicio 1 son algoritmos ya que serán
utilizados para resolver una incógnita y en caso tal se vuelven a presentar los mismos
problemas, se pueden volver a utilizar para resolver dicho problema.

3. Determine y describa un algoritmo ( lista de pasos ) para intercambiar los contenidos


de dos tazas de líquido. Suponga que dispone de una tercera taza para conservar el
contenido de cualquier taza de manera temporal. Cada taza deberá enjuagarse antes
que cualquier líquido nuevo se vierta en ella.
----------------------------------------------------------------------------------------------------------------
#include <iostream>
#include <conio.h>

using namespace std;

int main() {
cout<<"Problema 1\n Intercambiar el contenido de dos tazas, utilizando una tercera taza."<<endl;
cout<<"Paso 1:\n Lavar la 3era taza."<<endl;
cout<<"Paso 2:\n Depositar el contenido de la 1era taza en la 3era taza."<<endl;
cout<<"Paso 3:\n Lavar la 1era taza."<<endl;
cout<<"Paso 4:\n Depositar el contenido de la 2da taza en la 1era taza."<<endl;
cout<<"Paso 5:\n Lavar la 2da taza."<<endl;
cout<<"Paso 6:\n Depositar el contenido de la 3era taza en la 2da taza."<<endl;
cout<<"Paso 7:\n Lavar la 3era taza."<<endl;
cout<<"Paso 8:\n Fin."<<endl;
return(0);
}
----------------------------------------------------------------------------------------------------------------
4. Escriba un conjunto de instrucciones detallado, en español, para calcular la resisten-
cia de los siguientes resistores conectados en serie: ​n ​resistores, cada uno con una re-
sistencia de 56 ohmios, ​m ​resistores, cada uno con una resistencia de 33 ohmios, y ​p
resistores, cada uno con una resistencia de 15 ohmios. Note que la resistencia total de los
resistores conectados en serie es la suma de todas las resistencias individuales.

● Paso 1

conocer el valor de n, m, p

● Paso 2

Calcular la resistencia en serie

RS = ( ​n​ * 56 ) + ( ​m​ * 33 ) + ( ​p​ * 15 )

● Paso 3

< Mostrar la resistencia serie ( RS )

● Paso 4

Fin

5. Escriba un conjunto de instrucciones detalladas paso a paso, para encontrar el


número más pequeño en un grupo de tres números enteros.

● Paso 1

Conocer el valor n1, n2, n3

● Paso 2

Verificar el valor menor y desplegarlo

si ( n1 <= n2 y n1 <= n3 )

despliega n1

de lo contrario si ( n2 <= n1 y n2 <= n3 )

despliega n2

de lo contrario despliega n3

● Paso 3

Fin
6. a. Escriba un conjunto de instrucciones detalladas paso a paso, para calcular el
número menor de billetes en dólares necesarios para pagar una factura de una cantidad
TOTAL. Por ejemplo, si TOTAL fuera $97, los billetes consistirán en uno de $50, dos de
$20, uno de $5 y dos de $1. (Para este ejercicio, suponga que sólo están disponibles
billetes de $100, $50, $20, $10, $5 y $1.)

1 Reconocer el valor de los billetes y contar para averiguar el valor total.

2. Usar la menor cantidad de billetes posibles para formar un valor determinado

3. Usar estrategias diferentes para formar el total y dar el menor cambio posible.

b. Repita el ejercicio 6a, pero suponga que la factura debe pagarse sólo con billetes de
$1.

1. Reconocer cuántos billetes de $1 están disponibles


2. Sumar los billetes a utilizar
3. Dar los billetes de $1 con la cantidad total necesaria para pagar la factura

7. a. Escriba un algoritmo para localizar la primera ocurrencia del nombre JEANS en


una lista de nombres ordenada al azar.

----------------------------------------------------------------------------------------------------------------
#include<iostream>

using namespace std;

int main() {

string str= "\n1.Fierro\n2.Jeans\n3.Cortar\n4.Pantalon\n5.Hierro\n6.Hielo\n7.Jeans";

cout << str<<'\n';

cout <<" La primera instancia de la palabra 'Jeans' se encuentra después de X cantidad caracteres: X = ";

cout<< str.find("Jeans");

return 0;

}
----------------------------------------------------------------------------------------------------------------
b. Discuta cómo podría mejorar su algoritmo para el ejercicio si la lista de nombres
estuviera en orden alfabético.

R/. Si la lista estuviera en orden alfabético, sólo habría que hacer que el algoritmo ignore
cualquier todas las palabras que no tengo la inicial de la palabra, en es este caso la “J” por la
palabra “Jeans”, y que solo verifique si la palabra con la “J” como inicial sea “Jeans”.

8. Escriba un algoritmo para determinar las ocurrencias totales de la letra e en


cualquier enunciado.

> R= ingresar la letra e en el computador

> Elegir y definir el enunciado que se analizará

> Sumar todas las veces que "e" aparezca en el enunciado de uno en uno: seria e=1

9. Determine y escriba un algoritmo para clasificar cuatro números en orden


ascendente (de menor a mayor).

----------------------------------------------------------------------------------------------------------------
#include <stdio.h>
#include <stdlib.h>
#include <math.h>

int main()
{
printf("\n Programa Para Ordenar Numeros (De Manera Ascendiente) \n");
int numeros_a_ordenar;
printf(" Cantidad de Numeros a Ordenar: ");
scanf(" %d", &numeros_a_ordenar);
printf("\n Numeros a Ordenar\n");
int vector_numeros[numeros_a_ordenar];
int i, j, k=1;
for(i=0;i<numeros_a_ordenar;i++)
{
printf(" %d: ", k);
scanf(" %d", &j);
vector_numeros[i] = j;
k++;
}{
printf("%d ", vector_numeros[i]);
}
int x, y;
for(i=0;i<numeros_a_ordenar;i++)
{
for(j=i+1;j<numeros_a_ordenar;j++)
{
x = vector_numeros[i] - vector_numeros[j];
if(x>0)
{
y = vector_numeros[j];
vector_numeros[j] = vector_numeros[i];
vector_numeros[i] = y;
}
}
}
printf("\n Resultado Final: \n");
printf(" ");
for(i=0;i<numeros_a_ordenar;i++)
{
printf("%d ", vector_numeros[i]);
}
}

----------------------------------------------------------------------------------------------------------------
Ejercicios asignados del 2.1

1. Indique si los siguientes son nombres de función válidos. Si son válidos, indique
si son nombres mnemónicos. (Recuerde que un nombre de función mnemónico
transmite alguna idea sobre el propósito de la función.) Si son nombres inválidos,
indique por qué.

Nombre de Mnemónico Valido / No ¿Por qué?


Función valido

Poder No Si Cumple con reglas


de identificadores

Total Si Si Cumple con reglas


de identificadores

Voltios$ No Si Cumple con reglas


de identificadores

Coseno Si Si Cumple con reglas


de identificadores

Densidad Si Si Cumple con reglas


de identificadores

Tangente Si Si Cumple con reglas


de identificadores

a2B3 No Si Cumple con reglas


de identificadores

M1234$ No Si Cumple con reglas


de identificadores

ValABS Si Si Cumple con reglas


de identificadores
While Si No Palabra Reservada

Distancianeta Si Si Cumple con reglas


de identificadores

Ampnuevo Si Si Cumple con reglas


de identificadores

Computado No Si Cumple con reglas


de identificadores

valMin Si Si Cumple con reglas


de identificadores

Suma Si Si Cumple con reglas


de identificadores

1234 No No Inicia con un


numero

B34a No Si Cumple con reglas


de identificadores

Seno Si Si Cumple con reglas


de identificadores

Return Si No Palabra reservada

Abcd No Si Cumple con reglas


de identificadores

34ab No No Inicia con un


número

$seno No No Empieza con un


carácter especial
pila No No Palabra reservada

2. Suponga que se han escrito las siguientes funciones:

ObtenerLargo (), ObtenerAncho (), CalcArea (), MostrarArea ()

a. A partir de los nombres de las funciones, ¿qué piensa que podría hacer cada
función?

​ ObtenerLargo ()​: Obtener el largo de una figura.

ObtenerAncho​ (): Obtener el ancho de una figura

CalcArea (​): Calcula el área de una figura

MostrarArea​ (): Despliega el área que resulta de una figura.

b. ¿En qué orden piensa que una función main() podría ejecutar estas funciones
(con base en sus nombres)?

R./ En base a sus nombres creo que la función main() ejecutaría las funciones en el
siguiente orden:

A. CalcArea()

B. ObtenerLargo()

C. ObtenerAncho()

D. MostrarArea()
3. Suponga que se han escrito las siguientes funciones:

velocidad (), distancia (), aceleración ()

A partir de los nombres de las funciones, ¿qué piensa que podría hacer cada función?

-Velocidad (): Velocidad que tendrá una figura al cambiar de posición

-Distancia (): Distancia que se moverá una figura

-Aceleración (): Cambio de velocidad de una figura.

4. Determine nombres para funciones que hagan lo siguiente:

a) Encontrar el promedio de un conjunto de números.

a. calcProm()

b) Encontrar el área de un rectángulo.

a. areaRect()

c) Encontrar el valor mínimo en un conjunto de números.

a. Valmin()

d) Encontrar la densidad de una puerta de acero.

a. dens()

e) Clasificar un conjunto de números de menor a mayor.

a. OrdenMenorMayor()
5. Del mismo modo en que la palabra clave int se usa para indicar que una función
devolverá un número entero, las palabras clave void, char, float y double se usan para
indicar que una función no devolverá ningún valor o devolverá un carácter, un número
en punto flotante en precisión simple, y un número en precisión doble, respectivamente.
Usando esta información, escriba líneas de encabezado para una función main() que no
recibirá argumentos pero que devolverá:

a. ningún valor
b. un carácter
c. un número de punto flotante en precisión simple
d. un número en precisión doble
----------------------------------------------------------------------------------------------------------------
#include <iostream>

using namespace std;

int main() {

int entero= 20;


float flotante = 9.50;
double mayor = 11.5556;
char letra = 'b';

return 0; }

----------------------------------------------------------------------------------------------------------------

6. ​a. Usando cout, escriba un programa en C++ que despliegue su nombre en una línea,
su domicilio en una segunda línea, y su ciudad, estado y código postal en una tercera
línea.

----------------------------------------------------------------------------------------------------------------
#include <iostream>
#include<stdio.h>
using namespace std;

int main(int argc, char *argv[]) {

cout<<"\t nombre: kevin cabrera ";


cout<<"\n\n\t ubicacion: mirador del pacifico 40";
cout<<"\n\n\t ciudad: panama";

return 0;
}
----------------------------------------------------------------------------------------------------------------
7. a. Escriba un programa en C++ para desplegar lo siguiente:

La cosecante de un ángulo
es igual a uno dividido entre
el seno del ángulo.

b. Compile y ejecute el programa que ha escrito para el ejercicio 7a en una


computadora.

----------------------------------------------------------------------------------------------------------------
#include <iostream>
#include<stdio.h>
using namespace std;

int main(int argc, char *argv[]) {

cout<<"\t\n la cosecante de un ángulo es igual a uno dividido entre el seno del ángulo";

return 0;
}
----------------------------------------------------------------------------------------------------------------

También podría gustarte