Programacion estructurada U5
Programas hechos en clase
1.
#include <stdio.h>
#include <stdlib.h>
void hola(){
puts("Dentro de la funcion");
}
void main()
{
printf("funcion 1!\n");
hola();
puts("de regreso en el main");
}
2.
#include <stdio.h>
#include <stdlib.h>
void hola2(int a){
printf("variable a %i\n",a);
}
int main()
{
printf("funcion 2!\n");
hola2(3);
return 0;
}
3.
#include <stdio.h>
#include <stdlib.h>
void valor(int d){
d=d*4;
printf("Valor de d en funcion %i: \n",d);
}
int main()
{
int d;
printf("dame un valor !\n");
scanf("%i",&d);
valor(d);
printf("valor en main %i: \n",d);
return 0;
}
4.
#include <stdio.h>
#include <stdlib.h>
void tabla (int dato){
int i;
for(i=1;i<=10;i++){
printf("%i * %i = %i\n",dato,i,dato*i);
}
}
int main()
{
int num;
printf("numero de la tabla de multiplicar:");
scanf("%i",&num);
tabla(num);
return 0;
}
5.
#include <stdio.h>
#include <stdlib.h>
void tabla(int num) {
printf("tabla de multiplicar del %d:\n", num);
for (int i=1;i<=10; i++) {
printf("%d x %d = %d\n",num,i,num*i);
}
}
6.
#include <stdio.h>
#include <stdlib.h>
void cuadrado (){
int var;
printf("dame el valor: ");
scanf("%i",&var);
printf("el cuadrado de %i es %\n", var,var*var);
}
int main()
{
printf("cuadrado!\n");
return 0;
}
7.
#include <stdio.h>
#include <stdlib.h>
int cubo(int num){
num=num*num*num;
return num;
}
int main()
{
int val;
int regreso;
printf("dame un numero: \n");
scanf("%i",&val);
cubo(val);
regreso=cubo(val);
printf("valor de cubo es: %i \n",regreso);
printf("cubo de 6 %i\n",cubo(6));
return 0;
}
8.
#include <stdio.h>
#include <stdlib.h>
int i,j ,mat[5][5];
void iniciomat(void){
for(i=0;i<5;i++){
for(j=0;j<5;j++){
mat[i][j]=0;
}
}
}
void imprimemat(void){
for(i=0;i<5;i++){
for(j=0;j<5;j++){
printf("%i ",mat[i][j]);
}
puts(" ");
}
}
int pidedato(){
int dato;
printf("dame un dato: \n");
scanf("%i",&dato);
return dato;
}
void llenardatos(){
mat [0][0]= pidedato();
mat [0][4]= pidedato();
mat [4][0]= pidedato();
mat [4][4]= pidedato();
}
int main()
{
iniciomat();
llenardatos();
imprimemat();
return 0;
}
9.
#include <stdio.h>
#include <stdlib.h>
void primera(void){
extern prueba;
prueba=5;
printf("dentro de prueba %i\n",prueba);
}
int main()
{
extern prueba;
primera();
prueba=prueba+1;
printf("dentro del main %i\n",prueba);
return 0;
}
int prueba;
10.
#include <stdio.h>
#include <stdlib.h>
void imprimevalor(){
static int contador=0;
printf("%valor de contador %i\n",contador);
contador++;
}
int main()
{
imprimevalor();
imprimevalor();
imprimevalor();
imprimevalor();
return 0;
}
11.
#include <stdio.h>
#include <stdlib.h>
int num;
void sumar_val();
int main()
{
num=57;
sumar_val();
printf("valor dentro del main() %i\n ",num);
return 0;
}
void sumar_val (){
num++;
printf("valor dentro de sumar_val %i\n",num);
}
12.
#include <stdio.h>
#include <stdlib.h>
void sum_ref(int *num){ //extraer de la memoria
*num+=1;
printf("valor en main() %i\n",*num);
}
int main()
{
int num=57;
sum_ref(&num); //posicion de la memoria
printf("valor en main() %i\n",num);
return 0;
}
13.
#include <stdio.h>
#include <stdlib.h>
int con; char usu[5];
void acceso(){
puts("bienvenido");
}
void contras(){
int conu;
do{
printf("dame la contraseña: ");
scanf("%i",&conu);
}while(conu!=con);
acceso();
}
void usuario(){
char us[5];
do{
printf("dame el usuario: ");
scanf("%s",us);
}while(strcmp(usu,us)!=0);
contras();
}
int main()
{
strcpy(usu,"Ari");
con=38;
printf("pedir usario, contraseña, acceso \n");
usuario();
return 0;
}
14.
#include <stdio.h>
#include <stdlib.h>
void imprProd(int a, int b) {
printf("El producto de %d y %d es: %d\n", a, b, a * b);
}
int main() {
int num1, num2;
printf("dos valores, 1-100\n");
do {
printf("Dame el primer valor (1-100): , valor (1-100): ");
scanf("%d", &num1);
} while(num1 < 1 || num1 > 100);
do {
printf("Dame el segundo valor (1-100): ,valor (1-100): ");
scanf("%d", &num2);
} while(num2 < 1 || num2 > 100);
imprProd(num1, num2);
return 0;
}
15.
#include <stdio.h>
#include <stdlib.h>
int valida(int dat)
{
if (dat<1 || dat>100) {return 1;}
else {return 0;}
}
int main (){
int dato,dato1,dato2;
int valida(int dato){
if (dato<1 || dato>100){ return 1; }
else{ return 0; }
}
void multipicacion(num1,num2){
printf("%i*%i=%i",num1,num2,num1*num2);
}
int main()
{
do{
printf("Dame dato: \n");
scanf("%i",&dato);
}while(valida(dato));
dato1=dato;
do{
printf("Dame dato: \n");
scanf("%i",&dato);
}while(valida(dato));
dato2=dato;
multipicacion(dato1,dato2)
return 0;
}
16.
#include <stdio.h>
#include <stdlib.h>
//funcion recursiva
float factorial(int n){
if(n==0) {return 1;}
else{
return n*factorial(n-1);
}
}
int main()
{
printf("%.2f",factorial(5));
return 0;
}
17.
#include <stdio.h>
#include <stdlib.h>
float fac(int n){
if(n<=0){return 1;}
else {
return n*fac(n-1);
}
}
return res;
}
int main()
{
int c=0;
//factorial 5
for(c=0;c<=5;c++){
printf("%i %.2f\n",c,fac(c));
}
return 0;
}
18.
#include <stdio.h>
#include <stdlib.h>
float fac(int n){
if(n<=0){return 1;}
else {
return n*fac(n-1);
}
}
return res;
}
int main()
{
int c=0;
//factorial 5
for(c=0;c<=5;c++){
printf("%i %.2f\n",c,fac(c));
}
return 0;
}
19.
#include <stdio.h>
#include <stdlib.h>
//pag157 prog10
int main()
{
int col;
do{
printf("dame colores de bandas: ");
scanf("%i",&col);
}while(col!=3);
int arrcol[col]; int coloru;
do{
printf("colores de la banda \n");printf("1.-Negro");
printf("2.-Cafe\n");printf("3.-Rojo");
printf("4.-Naranja\n");printf("5.-Amarillo");
printf("6.-Verde\n");printf("7.-Azul");
printf("8.-Violeta\n");printf("9.-Gris");
printf("10.-Blanco\n");printf("Elige el color con el numero\n");
scanf("%i",&coloru);
}while(coloru<1 || coloru>10);
return 0;
}
Trabajos del documento
CODIGO A SEGUIR
#include <stdio.h>
#include <math.h>
// Función que calcula f(x)
double calcular(double valor) {
double parte1 = exp(valor * sin(valor / 3.0));
double parte2 = cos((valor + M_PI) / 2.0);
return parte1 * parte2;
}
int main() {
double numero;
printf("dame un valor para x: ");
scanf("%lf", &numero);
double resultado = calcular(numero);
printf("El resultado de f(%.2lf) es: %.6lf\n", numero, resultado);
return 0;
}
1.
#include <stdio.h>
#include <stdlib.h>
void mensaje() {
printf("hola función\n");
}
int main() {
mensaje();
return 0;
}
2.
#include <stdio.h>
#include <math.h>
#include <stdlib.h>
void imprimirSeno(int numero) {
double valor = sin(numero);
printf("seno(%d) = %.4f\n", numero, valor);
}
int main() {
for (int k = 1; k <= 10; k++) {
imprimirSeno(k);
}
return 0;
}
3.
#include <stdio.h>
#include <stdlib.h>
void caritas() {
for (int k = 0; k < 3; k++) {
printf(":) :) :) ");
}
printf("\n");
}
void lista(int inicio) {
for (int x = inicio; x <= inicio + 10; x++) {
printf("%d ", x);
}
printf("\n");
}
int main() {
int valor;
printf("Dame un numero: ");
scanf("%d", &valor);
caritas();
lista(valor);
return 0;
}
4.
#include <stdio.h>
#include <stdlib.h>
int solicitar_numero() {
int num;
printf("Ingrese un numero entero: ");
scanf("%d", &num);
return num;
}
int main() {
int valor = solicitar_numero();
printf("El numero ingresado fue: %d\n", valor);
return 0;
}
5.
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
void solicitar_texto(char *texto, int max_longitud) {
printf("Ingrese una línea de texto: ");
fgets(texto, max_longitud, stdin);
// Eliminar el salto de línea si existe
int len = strlen(texto);
if (texto[len - 1] == '\n') {
texto[len - 1] = '\0';
}
}
void imprimir_cadena(char *texto) {
int longitud = strlen(texto);
printf("La longitud de la cadena es: %d\n", longitud);
for (int i = 0; i < longitud; i++) {
printf("Caracter %d: %c\n", i + 1, texto[i]);
}
}
return 0;
}
6.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
void imprimir_seno(double numero) {
printf("El seno de %.2f es: %.4f\n", numero, sin(numero));
}
int main() {
double numero = 23.0;
imprimir_seno(numero);
return 0;
}
7.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
double calc_seno(double x) {
return sin(x);
}
int main() {
double valor = 23;
printf("El seno de %.21f es: %.4lf\n", valor, calc_seno(valor));
return 0;
}
8.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
int dentro_rango(double valor) {
return (valor >= -1 && valor <= 1);
}
void revisar_seno(double x) {
double s = sin(x);
printf("El seno de %.2f es: %.4f ", x, s);
if (dentro_rango(s)) {
printf("correcto\n");
} else {
printf("fuera de rango\n");
}
}
int main() {
double dato;
printf("Ingrese un numero: ");
scanf("%lf", &dato);
revisar_seno(dato);
return 0;
}
9.
#include <stdio.h>
#include <string.h>
#include <ctype.h>
#include <stdlib.h>
int contar_letra_a(const char *texto) {
int total = 0;
for (int i = 0; texto[i] != '\0'; i++) {
if (tolower(texto[i]) == 'a') {
total++;
}
}
return total;
}
void imprimir_info(const char *texto, int cantidad) {
printf("Texto: %s", texto);
printf("Total de 'a': %d\n", cantidad);
}
int main() {
char texto[100];
printf("Escribe un texto: ");
fgets(texto, sizeof(texto), stdin);
int cantidad = contar_letra_a(texto);
imprimir_info(texto, cantidad);
return 0;
}
10.
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
char *colores[] = {"Negro", "Marrón", "Rojo", "Naranja", "Amarillo",
"Verde", "Azul", "Violeta", "Gris", "Blanco"};
int valores[] = {0, 1, 2, 3, 4, 5, 6, 7, 8, 9};
void mostrar_colores() {
for (int i = 0; i < 10; i++) {
printf("%d. %s\n", i, colores[i]);
}
}
double calcular_resistencia(int b1, int b2, int b3) {
return (valores[b1] * 10 + valores[b2]) * pow(10, valores[b3]);
}
int main() {
int banda1, banda2, banda3, tolerancia;
printf("Calculadora de Resistencias\n");
printf("Seleccione el color de la PRIMERA banda:\n");
mostrar_colores();
scanf("%d", &banda1);
printf("\nSeleccione el color de la SEGUNDA banda:\n");
mostrar_colores();
scanf("%d", &banda2);
printf("\nSeleccione el color de la TERCERA banda:\n");
mostrar_colores();
scanf("%d", &banda3);
printf("\nIngrese la tolerancia (en %%): ");
scanf("%d", &tolerancia);
double resistencia = calcular_resistencia(banda1, banda2, banda3);
printf("\n----------------------------------\n");
printf("Valor de la resistencia: %.2f ohms\n", resistencia);
printf("Tolerancia: %d%%\n", tolerancia);
printf("----------------------------------\n");
return 0;
}
11.
#include <stdio.h>
#include <stdlib.h>
int valor = 10; // variable global
void cambiar_valor() {
printf("cambiar_valor(): antes = %d\n", valor);
valor = 20;
printf("cambiar_valor(): después = %d\n", valor);
}
void mostrar_valor() {
printf("mostrar_valor(): valor actual = %d\n", valor);
}
int main() {
printf("main(): valor inicial = %d\n", valor);
cambiar_valor();
printf("main(): despues de cambiar_valor() = %d\n", valor);
mostrar_valor();
return 0;
}
12.
#include <stdio.h>
#include <stdlib.h>
void incrementar(int *valor) {
(*valor)++;
}
int main() {
int numero = 5;
printf("Valor antes de incrementar(): %d\n", numero);
incrementar(&numero);
printf("Valor despues de incrementar(): %d\n", numero);
return 0;
}
13.
#include <stdio.h>
#include <stdlib.h>
void mostrar_ascii(int valor) {
if (valor >= 0 && valor <= 250) {
printf("ASCII de %d: %c\n", valor, (char)valor);
} else {
printf("Error: %d esta fuera del rango (0–250)\n", valor);
}
}
int main() {
int a, b, c;
printf("Ingrese el primer numero: ");
scanf("%d", &a);
printf("Ingrese el segundo numero: ");
scanf("%d", &b);
printf("Ingrese el tercer numero: ");
scanf("%d", &c);
mostrar_ascii(a);
mostrar_ascii(b);
mostrar_ascii(c);
return 0;
}
Comentarios
Publicar un comentario