Practicas de algoritmia y programacion estructurada

Solo disponible en BuenasTareas
  • Páginas : 8 (1769 palabras )
  • Descarga(s) : 0
  • Publicado : 6 de marzo de 2011
Leer documento completo
Vista previa del texto
Práctica 1. Tipos de datos y declaración de variables. Manejo de expresiones aritméticas, lógicas/comparación, selección, iteración.

Objetivo. Que el alumno aplique los conceptos básicos sobre los temas de la práctica y los integre en un programa.

1.- Imprimir "si" en el caso que dado un número, a:

Sea cero: if (!a) printf ("Si\n");
Si, el resultado de la evaluación de la expresióndentro del if es 1 la(s) instrucciones dentro del cuerpo del if se ejecutaran. Por lo tanto, para cualquier valor a distinto de 0 al negarse se hace cero y la instrucción printf no se ejecutará; si a llega a ser 0 al negarse se hará 1 y la instrucción (printf) se ejecutará.

Sea mayor a cero
Se encuentre en el intervalo (3,15)
Se encuentre en el intervalo (0,10] o en los intervalos [15,20],[21,50)
Es mayor a x a la vez que es divisible entre dos
Sea divisible entre 4 ó sea divisible entre 400 siendo a su vez no divisible entre 100

2.- Imprimir "si" en el caso que dados a,b (o "no" en caso contrario)

a es al menos b
a es a lo más b
b es menor o igual a 1, a es menor a 1, a es mayor o igual a b

3.- Encuentre el valor de la siguiente expresión para a = 3, b = 63 . Sila expresión se encontrara en if (expresion) operación; ¿operación se ejecutaría? Conteste si/no.

(a >= 0) (a>=0) al evaluarse resulta en 1 para a = 3. SI
(a < 0 || a>=2)
(a > b || b < 1)
a >= 0 || a < 10 && !b || b < 100
(a >= 0 || a < 10) && (!b || b < 100)
(a >= 0 || ((a < 10 && !b) || b < 100))
(a>='a'&& a <='z') || (b>='A' && b<='Z')

4.- Escribir las siguientes ecuaciones como expresiones válidas en C. x,y k 

f(x) = 3x + 2
float f_x, x;
f_x = 3*x + 2;

f(x) = x² + 3 * sen(x)/2 + 5/2
f(x) = k*(log(sen(x/2 + 5)) )
f(x,y) = (3/2(x³ - 5) - 2y + cos((3+2)/(x+2))/5)*(1/k)

5.- Que sentencias de C utilizaría para el problema (for, if, for e if). Si, sedesea
Mostrar los elementos de una lista de números enteros
Multiplicar dos valores si uno de ellos es par
Mostrar los valores pares de una lista de números enteros
Buscar una letra en una palabra
Contar el número de veces que se repite una letra en una frase
Medir la longitud de una cadena
Comparar si dos cadenas son iguales

6.- Corrija los siguientes fragmentos de códigomain() {
for (,!a,){
--a;
}
return 0
}

main () {
for (i=0;j=3, i < j; i++) {
if (j = 0)
break
}
--j;
}

main() {
if (p < = 3) {
p = 3*(sen(x/2 + 5);
}
}

Práctica 2. Escriba los siguientes programas.

Objetivo. Manejo de variables, expresiones aritméticas, biblioteca de funciones matemáticas, expresiones lógicas y de comparación, funciones.1.- Convertir de °F a °C con la siguiente ecuación: C = 5/9(F-32)

Análisis del problema (Entrada, Salida)
Generar una solución (Seudocódigo)
Codificar la solución (Programa)

#include<stdio.h>
...

int main ( ) {

return 0;
}

2. Una red de intercambio telefónico es una red de teléfonos conectados directamente y no requiere de una estación de intercambio para hacerllamadas entre dos teléfonos. El número necesario de líneas directas necesarias para mantener una red conectada en forma directa para n teléfonos está dado por la fórmula: líneas = n(n-1)/2
Por ejemplo, conectar cuatro teléfonos en forma directa requiere de 6 líneas individuales. Aumentar un quinto teléfono requiere cuatro líneas adicionales, para un total de diez líneas.
Utilizando la fórmulaproporcionada, escriba un programa en C que determine el número de líneas directas necesarias para 100 teléfonos, y las líneas adicionales requeridas si se agregan otros diez teléfonos a la red.

3. Un radar común de la policía de caminos para calcular la velocidad emite un rayo de microondas en una frecuencia f0. El rayo se reflejará en el auto que se aproxima y será recibido y analizado...
tracking img