Práctica 0: Programación básica en C

Documentos relacionados
Práctica 0: Programación básica en C

Práctica 0: Repaso de C básico

E/S POR CONSOLA DE C++ Parte I. Elementos Básicos Dr. Oldemar Rodríguez R.

Vectores y Matrices. Tema 3: Repaso de Álgebra Lineal Parte I. Contenidos

PROGRAMACION / Clave: 11214

El lenguaje C. if (a>3) { printf("hola"); // bloque printf("%d",a); // de getch(); //código } Partes de un programa en C.

Prof. Dr. Paul Bustamante

PROGRAMACIÓN EN VISUAL BASIC Ejercicios sin resolver

Ecuaciones cuadráticas Resolver ecuaciones cuadráticas mediante factorización

GUÍA DE ESTUDIO: MATEMÁTICAS POLINOMIOS

Polinomios. 1.- Funciones cuadráticas

Prof. Dr. Paul Bustamante

Objetivo El alumno conocerá y aplicará los conceptos de arreglo y estructura en la realización de programas que resuelvan problemas de tipo numérico.

Introducción Programación Modular y a Métodos: Consideremos el siguiente ejercicio:

INSTITUCION EDUCATIVA LA PRESENTACION

ESCUELA POLITÉCNICA SUPERIOR PRÁCTICA 2: EXPRESIONES, PRINTF Y SCANF

Problemas de Recursividad

SISTEMAS DE ECUACIONES LINEALES

Lenguaje de Programación: C++ Repaso de Material C++

Programación En Lenguaje C

WHILE Y DO WHILE BREAK EN LENGUAJE C. BUCLES MIENTRAS. FORZAR SALIDA O TERMINACIÓN. EJEMPLO (CU00534F)

EJERCICIOS DE PROGRAMACIÓN EN C. DIBUJAR UN ROMBO O DIAMANTE. CALCULAR SUMATORIOS. (CU00542F)

Problema No.7. Elaborar un programa en C++ que lea una temperatura en grados Fahrenheit y muestre su equivalente en grados Celsius, Kelvin y Rankine.

EJERCICIOS BÁSICOS DE PROGRAMACIÓN EN C RESUELTOS. VARIABLES, PRINTF, SCANF, CÁLCULOS. (CU00527F)

Benemérita Universidad Autónoma de Puebla Facultad de Ciencias de la Computación Área de Programación

Algoritmo, Estructuras y Programación I Ing. Marglorie Colina

Sistemas de Ecuaciones Lineales

Práctica 2: Estructuras/Uniones/Campos de bits

SESIÓN DE EJERCICIOS E1

Entrada de datos y salida de resultados.

Examen de Fundamentos de la Programación (Modelo 1)

TEMA 2. LENGUAJE C. CONCEPTOS BÁSICOS Y PROGRAMACIÓN ELEMENTAL.

Tipos de Datos en C. Palabras reservadas en C

MATE Dr. Pedro Vásquez UPRM. P. Vásquez (UPRM) Conferencia 1 / 77

PROGRAMACIÓN ESTRUCTURADA

PROBLEMAS DEL TEMA 8: Estructuras de Datos Complejas

REPASO ARRAYS MULTIDIMENSIONALES EN JAVA. DECLARACIÓN Y USO. EJEMPLOS Y EJERCICIOS RESUELTOS. (CU00905C)

Complejidad de Algoritmos

2. SISTEMAS DE ECUACIONES LINEALES. Introducción

Lenguaje de programación C. Introducción

Programación Orientada a Objetos Métodos Guía de Ejercicios v9.7

Introducción general al Lenguaje C (2010/2011)

Una matriz es una tabla ordenada (por filas y columnas) de escalares a i j de la forma: a

Programación 2 Ejercicios Resueltos del Práctico 1

Ing. Ramón Morales Higuera

Repaso Lenguaje C Área de Servicios Programación (Ing. Elect. y Prof. Tec.), Programación I (TUG y TUR) y Electrónica programable (TUE)

UNIDAD 1: NÚMEROS NATURALES

MENORES, COFACTORES Y DETERMINANTES

Sistema de ecuaciones algebraicas

Ejercicios Tema 6. Funciones

Cátedra I Informática Autor I Carlos Bartó

Ecuaciones. 3º de ESO

El lenguaje C. 3. Una instrucción que se ejecutará si la condición es verdadera.

MODULO DE LOGARITMO. 1 log log N x b N N se llama antilogaritmo, b > 0 y b 1. Definición de Logaritmo. Liceo n 1 Javiera Carrera 2011

1. Escriba el siguiente código, compílelo y ejecútelo. Obtiene el resultado esperado? Modifíquelo para que se comporte como debe:

Introducción a C++ Algoritmos y Estructuras de datos II Dra. Carmen Mezura Godoy. Febrero 2009

Ahora responde a las siguientes cuestiones: Supongamos que el usuario introduce 3 en A, 4 en B y 5 en C

Anexo 1 ÁLGEBRA I.- Operaciones en las Expresiones Algebraicas II.- Factorización y Operaciones con las Fracciones III.- Funciones y Relaciones

Estructura de un programa en Java. Tipos de datos básicos. class miprimerprograma{ // comentario, no es parte del programa

2.4. Números complejos

Relación de problemas. Álgebra lineal.

VOCABULARIO HABILIDADES Y CONCEPTOS

Notas del curso de Introducción a los métodos cuantitativos

Tema 4 Operadores y Expresiones. Fundamentos de Informática

Tema 3 Constantes, Variables y Tipos

Se dice que dos monomios son semejantes cuando tienen la misma parte literal

Hoja de problemas Estructuras de Control

COMPUTACIÓN GUÍA DE TRABAJOS PRÁCTICOS NRO. 1

GUIA DE LABORATORIO # 13 Arreglos unidimensionales y bidimensionales

Vectores. 27/05/05 Programación Digital I 1

Variables y tipos básicos 1. Definir una variable de tipo char. Convertirla a una variable de tipo entera e imprimir su valor asociado.


PROGRAMACIÓN EN LENGUAJE C VARIABLES Y CONSTANTES

UNIVERSIDAD NACIONAL EXPERIMENTAL DE GUAYANA GERENCIA ACADEMICA COORDINACION DE PREGRADO PROYECTO INGENIERIA /ALGEBRA DE ESTRUCTURAS SEMESTRE:

Programación I. Ingeniería Técnica Informática. Ejercicios de los Temas 4, 5, 6 y 7

Autor: Ing. Nahuel González INTRODUCCIÓN A C. Clase 1

Tema 1: Matrices y Determinantes

Dirección de Desarrollo Curricular Secretaría Académica

PROBLEMAS DEL TEMA 7: Subprogramas y Modularidad

UNIDAD UNO PROGRAMACIÓN LÍNEAL Parte 3

Introducción a la Programación

Curso 0 de Informática

Metodología y Tecnología de la Programación

Teoría 8: Segunda Parte. Estructuras de Datos y Funciones de Entrada en Lenguaje C

Informática II Vectores y Matrices

El lenguaje C. 1. Estructuras. Principios de Programación Definicion de estructuras

Resumen Lenguaje Java

Programación-Tarea 14: Ocampo Venegas Josué

Una clasificación de los tipos de datos existentes en los diferentes lenguajes de programación se presenta a continuación:

Matrices, determinantes, sistemas de ecuaciones lineales.

MATEMÁTICAS APLICADAS A LAS C.C. SOCIALES

Expresiones Aritméticas

Objetivos. El alumno conocerá los elementos indispensables de un ambiente de programación y será capaz de realizar programas básicos en lenguaje C.

Inecuaciones y Ecuación cuadrática

Sentencias iterativas

Transcripción:

Facultad de Ciencias Exactas, Ingeniería y Agrimensura Departamento de Sistemas e Informática Escuela de Electrónica Informática II Práctica 0: Programación básica en C Contenido: Esta práctica está diseñada para que el estudiante comience a programar en C y se ejercite en manipular las estructuras de control, los tipos básicos de datos y operadores que provee el lenguaje, programando, editando, compilando, depurando y ejecutando programas en un entorno de desarrollo actual. Estos ejercicios están pensados para realizarse preferentemente con estilo y sintaxis de programación en C. 1) Realizar un programa para intercambiar los contenidos de dos variables enteras. ) Realizar un programa que declare las variables x, y, z, les asigne los valores 10, 0 y 30 e intercambie entre si sus valores de forma que el valor de x pasa a y, el de y pasa a z y el valor de z pasa a x (se pueden declarar variables auxiliares aunque se pide que se use el menor número posible). 3) Realizar un programa que pida una temperatura en grados Celsius y la convierta a grados Fahrenheit mostrando en pantalla un mensaje del tipo xxx grados Celsius son yyy grados Fahrenheit. Recuerde que: (F 3) /9 = C /5 4) Escriba código C para calcular y mostrar por pantalla el (/los) valor (/es) de x (real), solución de la siguiente ecuación cuadrática (polinomio de segundo grado): ax + bx + c = 0, donde, los coeficientes a, b y c se suponen enteros con valores en el rango de 100 a 100. Recuerde que para resolver una ecuación cuadrática se deben usar las fórmulas: x = 1, b =, c = 8 raiz =.0 y raiz = 4.0 1 Hay ciertos casos a tener en cuenta: raiz1= raiz = ( b + b ) 4ac a ( b b ) 4ac Si a y b son ambos 0, no hay solución (caso degenerado). a = 0, b = 0, c = 8 No hay solución (caso degenerado) a Informática II Práctica 0 v. 01 Pág 1 de 5

Si a es 0 y b distinto de 0, la ecuación es lineal, y tiene una única solución. a = 0, b =, c = 8 x = 4, la ecuación es lineal Si el término b 4ac (el discriminante) es negativo, entonces no tiene soluciones reales a = 1, b =, c = 8 discriminante negativo, no hay soluciones reales Si el discriminante es 0, entonces hay dos soluciones idénticas. a = 1, b = 4, c = 4 x =, (discriminante cero, única solución) 5) Escriba: a) código C para calcular el factorial de un número entero n, usando la sentencia while: n! = n.(n-1).(n-)...1 Tenga en cuenta que el factorial de un número entero cuyo valor puede sobrepasar el rango de los enteros, si n es muy grande. b) Escriba código C para hallar la potencia n (entera) de. Usar la sentencia for. 6) Escriba un programa que pida al usuario 10 números enteros y multiplique el primero por uno, el segundo por dos y así sucesivamente. Debe entregar como salida la suma de las multiplicaciones. 7) Realizar un programa que le presente al usuario un menú de opciones con las cuatro operaciones básicas (suma, resta, multiplicación, división). Según la operación elegida ingresará números enteros, se realizará la misma y se mostrará por pantalla el resultado. El usuario podrá trabajar en el programa hasta que indique lo contrario. Recordar que la división por cero es indeterminada. 8) Complete el siguiente programa para que dado un importe exacto de una cantidad indique el mínimo número de monedas y billetes que podría constituir esa cantidad. Las monedas y billetes pueden ser de son de 1, 5, 10, 5, 50, 100, 00 y 500 pesos. #define LIM 8 int monedas[lim]= {500, 00, 100, 50, 5, 10, 5, 1; int main(){ int num, cantidad, numonedas; printf ("Introduzca el importe exacto: "); scanf ("%d", &cantidad); printf ("El cambio optimo es el siguiente: \n"); for (num=0; num<lim; num++) { numonedas=cantidad / ; if (numonedas!= 0) printf ("%d de %d.\n", numonedas, monedas[num]); cantidad= cantidad % ; Informática II Práctica 0 v. 01 Pág de 5

9) Escriba un programa que lea por teclado diez números enteros distintos de cero y a continuación lea una secuencia de valores enteros indicando si están entre los diez valores leídos. Cuando se lea el valor cero, el programa finalizará. Solución: int main() { int vleidos[10], valor; for (int i=0; i<10; i++){ scanf(" \n %d",&valor); vleidos[i]=valor; printf ("El valor leido es: %d \n",valor); while (valor!= 0){ printf ("Ingrese un valor \n"); scanf(" \n %d",&valor); for (int j=0; j<10; j++){ if (valor==vleidos[j]) printf (" Valor ocupa el lugar : %d del vector \n", j ); else continue; return 0; 10)Se ingresa por teclado la cantidad de agua caída, en milímetros día a día durante un mes. Se pide determinar el día de mayor lluvia, el de menor y el promedio 11)Dadas n mediciones, { x1, x,, K xn como: x i de una misma magnitud x, se define el promedio x = y decimos que el promedio es la mejor estimación de x. Por otro lado, se define n _ 1 la desviación estándar como: σ x = xi x n y decimos que esta es una forma de caracterizar la confiabilidad de las mediciones. a) Escriba código C para calcular el valor promedio de mediciones contenidas en un arreglo de variables tipo double. b) Escriba código C para calcular la desviación estándar de mediciones contenidas en un arreglo de variables tipo double. 1)Consideremos n pares de mediciones ( x1, y1 ),( x, y ), K,( xn, y n). Si suponemos que las cantidades están relacionadas linealmente, es decir mediante una relación del tipo y = mx + h, entonces puede demostrarse que la mejor estimación de la pendiente m y de la ordenada al origen h, vienen dadas por las ecuaciones: Informática II Práctica 0 v. 01 Pág 3 de 5

h = m = i ( ) i = n x x (. ) n x y x y i i i i (. ) x y x x y i i i i i Escriba código C tal que, dado dos arreglos de variables tipo double, calcule la pendiente y la ordenada al origen. 13)Escriba a) código C para ordenar un arreglo de enteros en orden ascendente, usando el método de Selección. Dicho método consiste en encontrar el elemento más chico del arreglo e intercambiarlo con el primer elemento; luego se encuentra el segundo más chico y se lo intercambia con el segundo elemento; etc. b) código C para generar 100000 enteros al azar, ordenarlo y luego comparar los tiempos insumidos para buscar un elemento por búsqueda lineal y por otro un método más eficiente (investigar los métodos posibles). 14)Escriba a) código C para calcular la traza de una matriz cuadrada de double. Se denomina traza de una matriz cuadrada a la suma de los elementos de su diagonal principal. b) código C para determinar la matriz transpuesta de otra (conteniendo números de tipo double). Una matriz transpuesta de otra, es aquella que tiene los mismos elementos pero dispuestos en forma distinta. Las columnas de la matriz original se transforman en filas de la matriz transpuesta. c) código C para calcular el producto de dos matrices cuadradas de dimensión n. 15)Escriba código C para determinar si un String s es un palíndromo (es decir, se lee igual en ambos sentidos). Por ejemplo: abcba, es palíndromo. 16)Concatenar dos cadenas a) sin usar las funciones estándar. b) usando las funciones estándar. 17)Dada una cadena contar y mostrar por pantalla la ocurrencia de cada letra que compone la misma. 18)Dada una cadena, mostrarla invertirla. 19)Dada una frase en una cadena, mostrar en pantalla cada palabra que la compone: a) sin usar las funciones estándar. Informática II Práctica 0 v. 01 Pág 4 de 5

b) usando las funciones estándar. 0)Escriba un programa para ver las longitudes y valores máximos y mínimos en bytes de los tipos básicos de programación en C en su máquina: Solución: #include <limits.h> #include <float.h> int main(){ char a; short int b; int c; long int d; unsigned char e; unsigned short int f; unsigned int g; unsigned long int h; float i; double j; long double k; printf ("Longitud de cada uno de los tipos basicos \n\n"); printf ("La longitud de char a= %d\n",sizeof(a)); printf ("La longitud de short int b= %d\n",sizeof(b)); printf ("La longitud de int c= %d\n",sizeof(c)); printf ("La longitud de long int d= %d\n",sizeof(d)); printf ("La longitud de unsigned char e= %d\n",sizeof(e)); printf ("La longitud de unsigned short int f= %d\n",sizeof(f)); printf ("La longitud de unsigned int g= %d\n",sizeof(g)); printf ("La longitud de unsigned long int h= %d\n",sizeof(h)); printf ("La longitud de float i= %d\n",sizeof(i)); printf ("La longitud de double j= %d\n",sizeof(j)); printf ("La longitud de long double k= %d\n",sizeof(k)); printf("\nvalores minimos y maximos de cada uno de los tipos\n\n"); printf ("Minimo y maximo de char a= %d\t\t%d\n",char_min,char_max); printf ("Minimo y maximo de short int b=%d\t\t%d\n",shrt_min,shrt_max); printf ("Minimo y maximo de int c= %d\t\t%d\n",int_min,int_max); printf ("Minimo y maximo de long int d=%d\t\t%d\n",long_min,long_max); printf ("Maximo de unsigned char e= %d\n",uchar_max); printf ("Maximo de unsigned short int f= %d\n",ushrt_max); printf ("Maximo de unsigned int g= %d\n",uint_max); printf ("Maximo de unsigned long int h= %d\n",ulong_max); printf ("Minimo y maximo de float i= %d\t\t%d\n",flt_min,flt_max); printf ("Minimo y maximo de double j= %d\t\t%d\n",dbl_min,dbl_max); printf ("Minimo y maximo de long double k=%d\t\t%d\n",ldbl_min,ldbl_max); Informática II Práctica 0 v. 01 Pág 5 de 5