mas codigos de programas en c

Upload: enrique-javier-reyes-mendoza

Post on 01-Mar-2018

224 views

Category:

Documents


0 download

TRANSCRIPT

  • 7/26/2019 Mas Codigos de Programas en c

    1/32

    En este primer ejercicio se muestra la base de todo programa, la escritura en

    pantalla.

    Para ello, hay que introducir la librera adecuada con instrucciones bsicas

    () e indicarle al programa dnde empe!ar ("oid main()).

    #ecuerda que todas las instrucciones se escriben en min$sculas y acaban

    en;.

    %as &unciones ms simples y utili!adas son'

    print&Escritura en pantalla

    scan&%ectura de pantalla

    1. Programa de inicio: Escritura en pantalla.

    include

    "oid main()

    print&(*+olann*)-

    /na "e! reali!ado el programa anterior, pasaremos a reali!ar ejercicios de

    clculos matemticos. 0prenderemos a declarar "alores (int 1 n$meros

    enteros, &loat 1 n$meros decimales, char 1 caracteres) y a pedir al ordenador

    que los lea mediante la instruccin scan&. El clculo de "alores se sit$a sin

    instruccin.

    2. Programa que calcule la suma de dos nmeros.

  • 7/26/2019 Mas Codigos de Programas en c

    2/32

    include

    "oid main()

    int 2,3,4-

    print&(*Por &a"or, introdu!ca un numero' *)-

    scan&(*5d*,62)-

    print&(*0hora, inserte otro' *)-

    scan&(*5d*,63)-

    41273-

    print&(*nEl resultado es 5dn*,4)-

    3. Programa que calcula longitudes de circunferencia.

    include

    "oid main()

    &loat #,sol8-

    print&(*9ien"enido, calcularemos la longitud de su circun&erencia.nn*)-

    print&(*%o unico que debe hacer es introducir el radio' *)-

    scan&(*5&*,6#)-

    sol81:;.8=8?:;#-

    print&(*nnEl resultado es 5&nn*,sol8)-

    Volver

    http://informaticos53.webcindario.com/programacion.htm#menuhttp://informaticos53.webcindario.com/programacion.htm#menu
  • 7/26/2019 Mas Codigos de Programas en c

    3/32

    . Programa que calcula la media aritm!tica de tres nmeros

    cualesquiera.

    include

    "oid main()

    &loat a,b,c,@-

    print&(*9ien"enido, calcularemos la media aritmetica de tres

    numeros.nn*)-

    print&(*Por &a"or, introdu!ca el primero' *)-

    scan&(*5&*,6a)-

    print&(*0hora, inserte el segundo de ellos' *)-

    scan&(*5&*,6b)-

    print&(*Por ultimo, teclee el numero &inal' *)-

    scan&(*5&*,6c)-

    @1(a7b7c)A- print&(*nEl resultado es 5&nn*,@)-

    ". Programa que calcula #reas de trapecios.

    include

    "oid main()

    &loat bma,bme,h,0-

    print&(*9ien"enido al programa para calcular areas de trapecios.nn*)-

    print&(*9ien, introdu!ca la base mayor' *)-

    scan&(*5&*,6bma)-

    print&(*0hora, escriba la base menor' *)-

    scan&(*5&*,6bme)-

    print&(*3a solo necesito la altura' *)-

    scan&(*5&*,6h)-

    01((bma7bme);h)A:-

    print&(*nEl area del trapecio es 5&nn*,0)-

    0hora pasaremos a aprender operaciones aritmBticas ms complejas, como la

    ra! cuadrada (sqrt). Para ello introducimos una nue"a librera ().

  • 7/26/2019 Mas Codigos de Programas en c

    4/32

    $. Programa que calcule ra%ces cuadradas enteras.

    include

    include

    "oid main()

    int 2,#-

    print&(*Por &a"or, inserte un numero*)-

    scan&(*5d*,62)-

    #1sqrt(2)-

    print&(*nCu rai! cuadrada es 5dnn*,#)-

    &. Programa que calcula el #rea de un tri#ngulo '()rmula de *er)n+.

    include

    include

    "oid main()

    &loat a,b,c,sp,#-

    print&(*9ien"enido. Dalcularemos el area del triangulo.nn*)-

    print&(*ntroduce el primer lado' *)-

    scan&(*5&*,6a)-

    print&(*0hora, inserta el segundo lado' *)-

    scan&(*5&*,6b)-

    print&(*Por ultimo, escribe el tercer lado' *)-

    scan&(*5&*,6c)-

    sp1(a7b7c)A:-

    #1sqrt(sp;(spFa);(spFb);(spFc))-

    print&(*nEl area obtenida es 5&nn*,#)-

    print&(*@uchas gracias por utili!ar este progama.nn*)-

  • 7/26/2019 Mas Codigos de Programas en c

    5/32

    ,. Programa que calcula el capital final de un inter!s simple.

    include

    "oid main()

    &loat c,,t,G-

    print&(*9ien"enido. Dalcularemos el capital &inal de un interes

    simple.nn*)-

    print&(*Por &a"or, introduce el capital inicial' *)-

    scan&(*5&*,6c)-

    print&(*0hora, escribe el interes al que esta colocado' *)-

    scan&(*5&*,6)-

    print&(*Por ultimo, inserta el tiempo al que se deja el capital' *)-

    scan&(*5&*,6t)-

    G1c7c;(A8HH);t-

    print&(*nnEl capital &inal es de 5&nn*,G)-

    Itro smbolo que necesitaremos a partir de ahora ser el J5K, que sir"e para

    calcular el resto de una di"isin. Podemos "erlo en el siguiente ejemplo.

    -. Programa que calcule el resto de cualquier divisi)n entera.

    include

    "oid main()

    int L,d,#-

    print&(*+ola, obtendremos el resto de cualquier di"ision entera.nn*)-

    print&(*nserte el di"idendo' *)-

    scan&(*5d*,6L)-

    print&(*9ien, escriba el di"isor' *)-

    scan&(*5d*,6d)- #1L5d-

    print&(*nEl resto de la di"ision es 5dnn*,#)-

  • 7/26/2019 Mas Codigos de Programas en c

    6/32

    1. Programa que calcula el precio de un o/0eto sin el impuesto de valor

    aadido 'V+.

    include

    "oid main()

    &loat 2,M0,#-

    print&(*9ien"enido.Dalcularemos el precio de un articulo sin el

    M0.nn*)-

    print&(*Por &a"or, introdu!ca el precio de la compra' *)-

    scan&(*5&*,62)-

    M01(8N;2A8HH)-

    #12FM0-

    print&(*nEl precio del objeto sin M0 es 5&nn*,#)-

    11. Programa que calcule el #rea de un tri#ngulo.

    include

    "oid main()

    int 9,+,0-

    print&(*Por &a"or, introdu!ca la base del triangulo*)-

    scan&(*5d*,69)-

    print&(*0hora, inserte la altura del mismo*)-

    scan&(*5d*,6+)-

    019;+A:-

    print&(*nCu area es de 5dnn*,0)-

  • 7/26/2019 Mas Codigos de Programas en c

    7/32

    12. Programa que o/tenga la media geom!trica de tres numeros.

    include

    include

    "oid main()

    &loat a,b,c,#-

    print&(*9ien"enido, obtendremos la media geometrica de tres

    numeros.nn*)-

    print&(*Por &a"or, introdu!ca el primer numero' *)-

    scan&(*5&*,6a)-

    print&(*0hora, inserte el segundo numero' *)-

    scan&(*5&*,6b)-

    print&(*Por ultimo, escriba el tercer numero' *)-

    scan&(*5&*,6c)- #1cbrt(a;b;c)-

    print&(*nEl resultado es 5&nn*,#)-

    Volver

    /na de las estructuras ms utili!adas en programacin en D77 es el Ji&K. Cir"e

    para el ordenador distinga entre "arios caminos posibles. Ci hay ms de uno,

    se utili!ar JelseK para seOalar el restante. %as condiciones "an entre lla"es.

    @ayor >

    @enor 1

    @enor o

    igual

  • 7/26/2019 Mas Codigos de Programas en c

    8/32

    13. Programa que indica qu! numero de los dos introducidos por el

    usuario es ma4or.

    include

    "oid main()

    int 2,3-

    print&(*Por &a"or, escribe un numero *)-

    scan&(*5d*,62)-

    print&(*0hora, teclea otro *)-

    scan&(*5d*,63)-

    i&(2>3)

    print&(*nEl mayor es 5dnn*,2)-

    else i&(3>2)

    print&(*nEl mayor es 5dnn*,3)-

    else print&(*nEstos dos numeros son igualesnn*)-

    1. Programa que escri/a en pantalla un comentario con respecto a la

    temperatura del d%a.

    include

    "oid main()

    int 2,3-

    print&(*9ien"enido. ntrodu!ca la temperatura*)-

    scan&(*5d*,62)-

    i&(2

  • 7/26/2019 Mas Codigos de Programas en c

    9/32

    1". Programa que resuelve ecuaciones de segundo grado.

    include

    include

    "oid main()

    &loat 0,9,D,L,C,sol8,sol:-

    print&(*9ien"enido, #esol"eremos su ecuacion de segundo grado.nn*)-

    print&(*nPor &a"or, introdu!ca el coe&iciente 0' *)-

    scan&(*5&*,60)-

    print&(*n0hora, escriba el coe&iciente 9' *)-

    scan&(*5&*,69)-

    print&(*nPor ultimo, inserte el coe&iciente D' *)-

    scan&(*5&*,6D)-

    L19;9F=;0;D- i&(L

  • 7/26/2019 Mas Codigos de Programas en c

    10/32

    1$. Programa que indica la correspondencia de un nmero introducido

    por el usuario con un mes del ao 'aconse0a/le reali5arlo con 6789*+.

    include

    "oid main()

    int m-

    print&(*+ola, le diremos el mes segun el numero introducido.nn*)-

    print&(*ntrodu!ca el numero' *)-

    print&(*n*)-

    scan&(*5d*,6m)-

    i&(m118)

    print&(*Este numero se corresponde con el mes de Enero.nn*)-

    else i&(m11:)

    print&(*Este numero se corresponde con el mes de Gebrero.nn*)- else i&(m11)

    print&(*Este numero se corresponde con el mes de @ar!o.nn*)-

    else i&(m11=)

    print&(*Este numero se corresponde con el mes de 0bril.nn*)-

    else i&(m11)

    print&(*Este numero se corresponde con el mes de @ayo.nn*)-

    else i&(m11N)

    print&(*Este numero se corresponde con el mes de Vunio.nn*)-

    else i&(m11W)

    print&(*Este numero se corresponde con el mes de Vulio.nn*)-

    else i&(m11X)

    print&(*Este numero se corresponde con el mes de 0gosto.nn*)-

    else i&(m11?)

    print&(*Este numero se corresponde con el mes de

    Ceptiembre.nn*)-

    else i&(m118H)

    print&(*Este numero se corresponde con el mes de Ictubre.nn*)-

    else i&(m1188)

    print&(*Este numero se corresponde con el mes deYo"iembre.nn*)-

    else i&(m118:)

    print&(*Este numero se corresponde con el mes de

    Liciembre.nn*)-

    else

    print&(*Error, mes ineSistente.nn*)-

  • 7/26/2019 Mas Codigos de Programas en c

    11/32

    @uchas "eces querremos reali!ar un programa que muestre un men$, es decir,

    una serie de opciones para que nosotros decidamos a nuestra con"eniencia.

    TDmo se haceU Pues simplemente tomando una nue"a "ariable JopcinK, de

    la que eStraeremos su jugo con Ji&K.

    1&. Programa que simula un ca0ero autom#tico con un saldo inicial de

    1 Euros.

    include

    "oid main()

    int C,opc-

    &loat din,dan,C-

    C18HHH-

    print&(*9ien"enido a su cajero "irtual.n*)-

    print&(*Celeccione una opcion'nn*)-

    print&(*8.ngreso en cuenta.n:.#eintegro.n.Mer el saldo

    disponiblenH.Calirnn/sted ha marcado' *)-

    scan&(*5d*,6opc)-

    i&(opc118)

    print&(*n9ien, escriba el dinero que desee introducir' *)-

    scan&(*5&*,6din)-

    C1C7din-

    print&(*nngreso reali!ado correctamente. Cu saldo actual es de

    5&n*,C)-

    else i&(opc11:)

    print&(*n0hora, teclee la cantidad de capital que desea retirar' *)- scan&(*5&*,6dan)-

    i&(dan>C)

    print&(*nError. Yo dispone de tanto sueldo.n*)-

    else

    C1CFdan-

  • 7/26/2019 Mas Codigos de Programas en c

    12/32

    print&(*n#eintegro reali!ado correctamente. Cu saldo actual es de

    5&n*,C)-

    else i&(opc11)

    print&(*nCu saldo actual es de 5dn*,C)-

    else i&(opc11H)

    print&(*nRracias por utili!ar este programa.nn*)-

    else

    print&(*nLisculpe, se ha equi"ocado al marcar.nn*)-

    En determinadas ocasiones nos ser de mucha utilidad el poder borrar loescrito en pantalla. Para ello debemos utili!ar una nue"a librera ()

    que contenga la instruccin para que se produ!ca el borrado. (system(JclsK)).

    1,. Programa que /orre la pantalla al pulsar ntro.

    include

    include

    "oid main()

    char Espera-

    print&(*Programa de prueba de borrado de pantalla*)-

    print&(*nPulsa intro*)-

    scan&(*5c*,6Espera)-

    system(*cls*)-

    print&(*+a &uncionado, +asta pronto.n*)-

    Volver

    /na "e! "isto cmo se reali!a un borrado de pantalla, pasaremos a "er los

    bucles en D77, que reali!an tareas repetiti"as. El primero de ellos es el bucle

    J&orK. %o usaremos siempre que cono!camos el n$mero de iteraciones (Lesde

    Z hasta).

    http://informaticos53.webcindario.com/programacion.htm#menuhttp://informaticos53.webcindario.com/programacion.htm#menu
  • 7/26/2019 Mas Codigos de Programas en c

    13/32

    Cer necesario el uso de un contador (i).

    1-. Programa que muestra los veinte primeros nmeros naturales.

    include

    "oid main()

    int i1:8-

    const int tope1:H-

    &or(i1H-i

  • 7/26/2019 Mas Codigos de Programas en c

    14/32

    22. Programa que muestre una cuenta atr#s desde die5 asta cero.

    include

    "oid main()

    int i18H-

    const int tope1H-

    &or(i18H-i>1H-i1iF8)

    print&(*5dn*,i)-

    print&(*n+asta pronton*)-

    23. Programa que muestre un men de mltiplos 'e 2

  • 7/26/2019 Mas Codigos de Programas en c

    15/32

    print&(*5dn*,t)-

    else i&(S11=)

    int s18HH-

    const int tope18HH-

    &or(s1H-s

  • 7/26/2019 Mas Codigos de Programas en c

    16/32

    En los bucles J\hileK y Jdo \hileK no es necesario conocer el n$mero de

    iteraciones.

    ]hileteraciones >1 H.

    Lo \hileteraciones >18.

    2". Programa que diga si un nmero es par o no. (inali5a al pulsar .

    include

    "oid main()

    int num-

    print&(*Por &a"or, escribe el numero que quieras.^e diremos si es par o

    impar' *)- \hile (num1H)

    scan&(*5d*,6num)-

    i&(num5:11H)

    print&(*nnEste numero es par.n*)-

    else

    print&(*nnEste numero es impar.n*)-

    print&(*n+asta luego.nn*)-

    0qu tenemos un eStenso programa como ejemplo para demostrar la sencille!

    y utilidad del bucle Jdo \hileK.

  • 7/26/2019 Mas Codigos de Programas en c

    17/32

    2$. Programa que simule un calculadora cient%fica de 2" funciones.

    include

    include

    "oid main()

    &loat

    S,y,s,d,p,c,sr,rq,res,ros,cb,ch,co,cop,se,sep,ta,tap,cub,cubp,in,inp,lo,lop,ln,lnp-

    int opc-

    print&(*9ien"enido a la calculadora de : &unciones.nn*)-

    do

    print&(*Por &a"or, introdu!ca un numero (H para salir)' *)-

    scan&(*5&*,6S)-

    print&(*n0hora, inserte otro' *)-

    scan&(*5&*,6y)-

    print&(*nn9ien. 3a puede seleccionar unaopcion'nn8.Cumarn:.#estarn.@ultiplicarn=.Li"idirn.ndicar el

    mayornN.#ai! cuadrada del primer numeronW.#ai! cuadrada del segundo

    numeronX.Duadrado del primer numeron?.Duadrado del segundo

    numeron8H.#ai! cubica del primer numeron88.#ai! cubica del segundo

    numeron8:.Doseno del primer numeron8.Doseno del segundo

    numeron8=.Ceno del primer numeron8.Ceno del segundo

    numeron8N.^angente del primer numeron*)-

    print&(*8W.^angente del segundo numeron8X.Dubo del primer

    numeron8?.Dubo del segundo numeron:H.n"ersa del primer

    numeron:8.n"ersa del segundo numeron::.%ogaritmo decimal del primer

    numeron:.%ogaritmo decimal del segundo numeron:=.%ogaritmo neperiano

    del primer numeron:.%ogaritmo neperiano del segundo

    numeronH.Calirnn/sted ha marcado' *)-

    scan&(*5d*,6opc)-

    i&(opc118)

    s1S7y-

    print&(*%a suma de ambos numeros es 5&nn*,s)-

    else i&(opc11:)

    d1SFy- print&(*%a di&erencia de ambos numeros es 5&nn*,d)-

    else i&(opc11)

    p1S;y-

    print&(*El producto de ambos numeros es 5&nn*,p)-

    else i&(opc11=)

    c1SAy-

  • 7/26/2019 Mas Codigos de Programas en c

    18/32

    print&(*El cociente de la ra!on de ambos numeros es

    5&nn*,c)-

    else i&(opc11)

    i&(S>y)

    print&(*El mayor es 5&nn*,S)-

    else i&(y>S)

    print&(*El mayor es 5&nn*,y)-

    else

    print&(*Lisculpe, estos dos numeros son iguales.nn*)-

    else i&(opc11N)

    rq1sqrt(S)-

    print&(*%a rai! cuadrada del primer numero es 5&nn*,rq)-

    else i&(opc11W)

    sr1sqrt(y)- print&(*%a rai! cuadrada del segundo numero es 5&nn*,sr)-

    else i&(opc11X)

    res1S;S-

    print&(*El cuadrado del primer numero es 5&nn*,res)-

    else i&(opc11?)

    ros1y;y-

    print&(*El cuadrado del segundo numero es 5&nn*,ros)-

    else i&(opc118H)

    cb1cbrt(S)-

    print&(*%a rai! cubica del primer numero es 5&nn*,cb)-

    else i&(opc1188)

    ch1cbrt(y)-

    print&(*%a rai! cubica del segundo numero es 5&nn*,ch)-

    else i&(opc118:)

    co1cos(S)-

    print&(*El coseno del primer numero es 5&nn*,co)-

    else i&(opc118)

    cop1cos(y)-

    print&(*El coseno del segundo numero es 5&nn*,cop)- else i&(opc118=)

    se1sin(S)-

    print&(*El seno del primer numero es 5&nn*,se)-

    else i&(opc118)

    sep1sin(y)-

    print&(*El seno del segundo numero es 5&nn*,sep)-

  • 7/26/2019 Mas Codigos de Programas en c

    19/32

    else i&(opc118N)

    ta1tan(S)-

    print&(*%a tangente del primer numero es 5&nn*,ta)-

    else i&(opc118W)

    tap1tan(y)-

    print&(*%a tangente del segundo numero es 5&nn*,tap)-

    else i&(opc118X)

    cub1S;S;S-

    print&(*El cubo del primer numero es 5&nn*,cub)-

    else i&(opc118?)

    cubp1y;y;y-

    print&(*El cubo del segundo numero es 5&nn*,cubp)-

    else i&(opc11:H)

    in18AS-

    print&(*%a in"ersa del primer numero es 5&nn*,in)- else i&(opc11:8)

    inp18Ay-

    print&(*%a in"ersa del segundo numero es 5&nn*,inp)-

    else i&(opc11::)

    lo1log8H(S)-

    print&(*El logaritmo decimal del primer numero es

    5&nn*,lo)-

    else i&(opc11:)

    lop1log8H(y)-

    print&(*El logaritmo decimal del segundo numero es

    5&nn*,lop)-

    else i&(opc11:=)

    ln1log(S)-

    print&(*El logaritmo neperiano del primer numero es

    5&nn*,ln)-

    else i&(opc11:)

    lnp1log(y)-

    print&(*El logaritmo neperiano del segundo numero es

    5&nn*,lnp)- else i&(opc11H)

    print&(*Rracias por utili!ar este programa.nn*)-

    else

    print&(*Lisculpe, se ha equi"ocado al marcar.nn*)-

    \hile(S1H)-

  • 7/26/2019 Mas Codigos de Programas en c

    20/32

    2&. Programa que muestre los divisores de un nmero introducido por el

    usuario.

    include

    "oid main()

    int num-

    print&(*9ien"enido al programa para calcular los di"isores de un

    numero.nn*)-

    \hile(num1H)

    print&(*ntrodu!ca un numero' *)- scan&(*5d*,6num)-

    print&(*nnCus di"isores son'n*)-

    &or(int i18- i

  • 7/26/2019 Mas Codigos de Programas en c

    21/32

    prod18-

    print&(*ntrodu!ca el limite superior' *)-

    scan&(*5d*,6sup)-

    print&(*n0hora, escriba el limite in&erior' *)-

    scan&(*5d*,6in&)-

    print&(*nnCeleccione una opcion'nn8.Cuman:.Productonn eclee

    su eleccion' *)-

    scan&(*5d*,6opc)-

    s\itch (opc)

    case 8'

    &or(int i1in&-i

  • 7/26/2019 Mas Codigos de Programas en c

    22/32

    2-. Programa que calcule = t!rminos de la sucesi)n de (i/onacci.

    include

    include

    "oid main()

    print&(*9ien"enido al programa para calcular la progresion de

    Gibonacci.nn*)-

    int "eces, primer1H,segun18,proSimo,r-

    char borrado-

    print&(*ntrodu!ca el numero de terminos' *)-

    scan&(*5d*,6"eces)-

    scan&(*5c*,6borrado)-

    system(*cls*)- print&(*+e aqui la sucesion de 5d terminos' n*,"eces)-

    &or(int i1H-i

  • 7/26/2019 Mas Codigos de Programas en c

    23/32

    print&(*5dt*,(nA1:))-

    else

    n1(;n)78-

    print&(*5dt*,n)-

    print&(*n*)-

    0hora "amos a reali!ar un programa con n$meros aleatorios. Para ello

    debemos utili!ar el reloj del ordenador (Yo se repitan los mismos "alores una

    y otra "e!), con la consiguiente aparicin de una nue"a librera ().

    srand((unsigned)time(Y/%%))

    El problema es que el ordenador puede in"entar n$meros aleatorios desde uno

    hasta dos ele"ado a quince. Es muy $til saber poner un lmite.

    Y$mero aleatorio1rand()5(^ope78)-

    31. Programa que invente un nmero para que lo adivine el usuario