Funciones II. Fundamentos de Programación Fundamentos de Programación I

Documentos relacionados
Funciones: Pasos por Referencia Recursividad

Funcions en C++ Cridada al subpr. Definició del subpr. Subprogrames en C++

Cridada al subpr. Definició del subpr.

Ejercicios De Programación De C++ Algoritmos. Lenguaje De Programación C++:

Funciones I. Fundamentos de Programación Fundamentos de Programación I

Funciones. Parámetros por valor

Tema: FUNCIONES, PROCEDIMIENTOS Y RECURSIVIDAD.

Programación 2. Lección 4. Metodología de diseño de algoritmos recursivos

Estructuras de repetición

= RETURN =3 7-. ELSE K

Preliminares: programación con C++

Fundamentos de la programación

ALGORITMO: LENGUAJE C++: # include <iostream.h> # include <math.h> int main () Int num 1=0, num =0, d=0; Cout << ingrese primer numero: ;

Programación de sistemas Recursión

6. Visualizar error, ingrese un numero que no sea cero

Programación 1 Tema 5. Instrucciones simples y estructuradas

Cadenas y Estructuras

Programación 1 Tema 5. Instrucciones simples y estructuradas

Cadenas (strings) y Estructuras

Programación 1. Tema II. Diseño de programas elementales. Lección 7. Diseño modular y descendente de programas

FUNDAMENTOS DE PROGRAMACIÓN. 1º ING. INFORMÁTICA (Plan 2000) 1ª Convocatoria. 21 de Enero de 2002

Programación de sistemas

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

Tema 7: Recursividad

PROGRAMACIÓN ESTRUCTURADA

Laboratorio 4 Tema 6. Procedimientos: Acciones, Funciones y Pase de Parámetros

Vectores y matrices. Fundamentos de Programación Fundamentos de Programación I

Ámbito y Funciones. Lenguaje de Programación Estructurado. Siempre imaginé el Paraíso como algún tipo de biblioteca.

Prof. Dr. Paul Bustamante

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

Unidad IV: Funciones

M.C. Yolanada Moyao Martínez

Programación 1 Tema 4. Diseño de programas elementales

Ejercicios entrada-salida

Programación 1 Tema 7. Desarrollo modular y descendente de programas

Prof. Dr. Paul Bustamante

Programación de Computadores 4 Iteraciones y Decisiones. Prof. Javier Cañas. Universidad Técnica Federico Santa María Departamento de Informática

Estructura de datos y de la información Boletín de problemas - Tema 9

Fundamentos de la programación

Codificación en C. Como pasar de Pseudocódigo a C (con pequeños trucos de C++)

TEMA 5: Subprogramas. Programación modular EJERCICIOS DE TRAZAS

Unidad 2 Recursividad. 2.1 Definición 2.2 Procedimientos Recursivos 2.3 Ejemplos de Casos Recursivos

1. Ejemplo de clase : La clase Cuenta 2. Uso de la clase Cuenta. 3. Métodos y objetos receptores de mensajes (Importante)

Programación 1. Tema II. Diseño de los primeros programas. Lección 4. Diseño de algunos programas elementales

Prof. Dr. Paul Bustamante

Tipos de datos y operadores en C++

TEMA 5: Subprogramas, programación modular

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.

Unidad 2 Recursividad. 2.1 Definición 2.2 Procedimientos Recursivos 2.3 Ejemplos de Casos Recursivos

Hoja de ejercicios del Tema 3

Hoja de ejercicios del Tema 3

#include <stdio.h> float cubica(float numero) { float cubica; cubica = numero * numero * numero; return cubica; }

Estructuras de repetición hacer-mientras y repita hasta

Funciones Propias con C++ (funciones definidas por el usuario)

Relación de prácticas de la asignatura METODOLOGÍA DE LA PROGRAMACIÓN Segundo Cuatrimestre Curso º Grado en Informática

Programación de Ordenadores

Examen escrito de Programación 1

Programación 1 Problemas del Composición condicional

Trabajo Práctico Nº 06

Estructuras de Decisión Simples y Dobles

Complejidad de algoritmos recursivos

Programación 1. Tema V Clase de problemas. Desarrollo de un módulo de biblioteca C++ para trabajar con conjuntos de letras

EJEMPLOS DE PROGRAMACIÓN DE FUNCIONES EN C: Página 1 de 5

Metodología de la Programación II. Recursividad

Listas y Recursión. Taller de Álgebra I. Primer Cuatrimestre de 2015

1. Qué se muestra en pantalla si se ejecutan las siguientes sentencias (suponiendo que el resto del programa que no se presenta es correcto)?

Informática PRÀCTICA 2 Curs

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

Actividades de Divulgación del Centro Atómico Bariloche. Qué hay detrás de un programa de computadora? Daniela Arnica Pablo E. Argañaras.

UTN FRBA Algoritmos y Estructura de Datos Examen Final 13/02/2015. Apellido y nombre: Legajo: Cursó con Prof:

Programación 1 Tema III Clase de problemas

Examen Junio- Grupo B Lunes 17 de Junio - Programación en C++ Pág. 1

UNTELS Estructuras Selectivas (Sin anidar) Estructuras condicionales

Prof. Dr. Paul Bustamante

CAPITULO 6: FUNCIONES

Recursividad. Facultad de Ciencias de la Computación. Juan Carlos Conde R. Object-Oriented Programming I

Unidad 2. La lógica de programación. Tema 4. Arreglos y estructuras de repetición

Fundamentos de programación

Estructuras de Repetición: Repita Mientras.

Recursividad. 1.1 Concepto de Recursividad. Objetivos. Metodología de la Programación II Entender el concepto de recursividad.

for(i = 0; i <= 45; i+=5) { x = (i*3.1416)/180; printf( seno(%d) = %f\n,i,seno(x));

Examen escrito de Programación 1. Viernes 22 de enero de Problema 1 o (3.0 puntos) Problema 2 o (3.0 puntos)

Programación 1. Tema II. Diseño de programas elementales. Lección 7. Diseño modular y descendente de programas

Programación 1 Problemas 3. Composición condicional

Fundamentos de programación

Programación 1 Tema 3. Información, datos, operaciones y expresiones

Estructuras de Repetición (Hacer-Mientras)

Cálculo del histograma de una imagen

Tema: Plantillas en C++.

Definición. Procesamiento de Arreglos. Paso de Parámetro a funciones. Arreglos multidimensionales 8/28/2013. Arreglos Unidad 0 Programación AVANZADA

Recursividad. Dept. Ciencias de la Computación e I.A. Universidad de Granada

1. Juego del Ahorcado

PROBLEMAS DE RECORRIDO

Programación 1. Tema III. Diseño de programas que trabajan con estructuras de datos. Lección 11. Estructuración agregada de datos

Fundamentos de programación

Programación 1 Tema III Clase de problemas. Diseño de algoritmos que extraen información de ficheros de texto (1)

Introduc)on to Programming (in C++) Ejemplos de tratamiento de secuencia de secuencias. Emma Rollón Departament of Computer Science

Estructuras de Repetición (Repita para)

Impresión por pantalla. 3. Indicar la salida por pantalla (2 puntos-20 minutos)

Transcripción:

Funciones II Fundamentos de Programación Fundamentos de Programación I Ejercicio 1: Escribe una función que transforme un punto en coordenadas polares a cartesianas Entradas: Un punto como coordenadas polares (modulo y ángulo) Salidas: Coordenadas x e y (x,y) Análisis: cuáles son las expresiones que te permiten pasar de coordenadas polares a cartesianas?? 1

#include <iostream.h> #include <math.h> //Prototipo de la función void PolaresACartesianas(float modulo, float angulo, float &x, float &y); float m,ang; float posx, posy; cout << Introducir el modulo y el angulo del punto en coordenadas polares:\n ; cin >> m >> ang; //Calculo la posicion x, y PolaresACartesianas(m, ang, posx, posy); cout << Las coordenas cartesianas correspondientes a: <<m <<, << ang << endl; cout << ( << posx <<, << posy<< ) << endl; return; void PolaresACartesianas(float modulo, float angulo, float &x, float &y) x = modulo*cos(angulo); y = modulo*sin(angulo); return; Ejercicio 2:Escribe una función que, dados dos enteros positivos x e y, calcule el cociente de la división entera y el resto utilizando únicamente restas. Entradas: Dos números enteros (a y b) Salidas: El cociente y el resto que han sido calculados Análisis: Cúal es el algoritmo que permite calcular la división entera mediante restas?? 2

/************************************************************************************ * Funcion division entera * Descripcion: Calcula el cociente y el resto de la division entera * Parámetros: * Nombre: E/S * a E * b E * resto S * * Valor devuelto: * char Es de tipo carácter (valor devuelto) ***************************************************************************************/ int DivisionEntera(int a, int b, int &resto) int cociente; cociente=0; while( a > b) a = a b; cociente ++; resto = a; return cociente; #include <iostream.h> //Prototipo de la funcion int DivisionEntera(int a, int b, int &resto); int dividendo, divisor; int cociente, resto; //Leo datos cout << Introducir dividendo y divisor: << endl; cin >> a; cin >> b; Llamada a la función cociente = DivisionEntera(dividendo, divisor,resto); //Escribo datos cout << El cociente es: << cociente << y el resto: << resto <<endl; return 0; 3

Ejercicio 3: Realizar una función recursiva que calcule el sumatorio y el productorio de los n primeros números naturales. /************************************************** Funcion que calcula el sumatorio de forma recursiva ***************************************************/ int Sumatorio(int n) int res; if (n == 1) res = 1; res = n + sumatorio( n 1); return res; /**************************************************** Funcion que calcula el productorio de forma recursiva *****************************************************/ int Productorio(int n) int res; if ( n == 1) res = 1; res = n * Productorio ( n-1); return res; 4

#include <iostream.h> //Prototipo de la funcion int Sumatorio(int n); int Productorio(int n); int num; int suma, producto; Llamada a la función cout << Este programa calcula el sumatorio y productorio de n numeros naturales\n ; cout << Utilizando una función recursiva. Introduce n:\n ; cin >> n; suma = Sumatorio(num); producto = Productorio(num); cout << El productorio es: << producto; cout << El sumatorio es: << suma; return 0; Ejercicio 4: Realizar una función recursiva que calcule recursivamente la suma de dos números enteros utilizando solamente operaciones de incremento y decremento. 5

/************************************************************************************ * Funcion que suma dos numero enteros * Descripcion: Calcula el cociente y el resto de la division entera * Parámetros: * Nombre: E/S * a E * b E * * Valor devuelto: * int (valor devuelto) ***************************************************************************************/ int Suma(int a, int b) if ( a == 0) res = b; res = suma(a-1,b+1) return res; Ejercicio 5: Recursividad indirecta. Escribe una función que devuelva true si un número entero pasado como parámetro es par y false en caso contrario. 6

#include <iostream.h> // Prototipos bool par(int n); bool impar(int n); int a; cout << "Introduce un número entero : "; cin >> a ; cin.ignore(); if(par(a)) cout << "... es par " << endl; cout << "... es impar " << endl; system("pause"); return 0; bool par(int n) if (n == 0) return true; return impar(n-1); bool impar(int n) if (n == 0) return false; return par(n-1); Ejercicio2: Se desea calcular la trayectoria de un determinado móvil sometido a un movimiento uniforme (v = e/ t). El móvil estará situado en una posición inicial (x_0, y_0) y deberá recorrer 100 metros. Calcular las posiciones intermedias para los siguientes móviles: Una hormiga (0.5 km/hora) una persona (3.5 km/hora) Un caballo (30 km/hora) Nota: Para la resolución del ejercicio diseñar una función que dada una posición inicial, una velocidad y un intervalo de tiempo calcule la posición alcanzada por el móvil. 7