Вы находитесь на странице: 1из 4

UniversidadNacionaldeSalta FacultaddeCienciasExactas DepartamentodeFsica

Laboratorio1

Gua de laboratorio No. 3 1Escribaunprogramaquesoliciteelingresodenombreyapellidoeimprimaenla pantalla:Mellamonombreapellido.Utilicelassentenciasinputydispparalaentrada dedatosysalidaderesultadosrespectivamente. 2Escribaunafuncinquemultipliqueunnmeropordos. 3Escribaunafuncinquecalculeellogaritmodecimaldeunnmero. 4Escriba un programa que emplee la dos funciones anteriores para calcular el logaritmodecimaldeldobledeunnmeroingresadoporelusuario. Sentenciacondicionalif:fijaunacondicinquedebecumplirseparaqueelprograma ejecuteunainstruccindada. Porejemplo,quieroescribirunprogramaquecalculeelvalorabsolutodeunnmero, paralocualdebemultiplicarpor1siintroduzcounnmeronegativoynohacernadasi el nmero introducido es positivo. Para realizar esta operacin debo ingresar cada nmeronypediralprogramaqueverifiquelacondicin:si(if)nesnegativo(menor quecero),entonces(then)lomultiplicapor1ysino(else),devuelveelmismonmero. Resumiendo,
Introduzco n si se cumple que n es menor que cero entonces hago m=-1*n si no se cumple hago m=n fin

Lasintaxisparalasentenciaifes:
if expr-cond then sentencia(s) else sentencia(s) end

Elprogramadelejemploseescribiradelasiguientemanera:
n=input('Introduzca el nmero'); if n<0 then m = -1*n; else m=n ; end disp(m, 'Valor absoluto=') // Entrada de datos //Ciclo condicional // Salida de resultados

UniversidadNacionaldeSalta FacultaddeCienciasExactas DepartamentodeFsica

Laboratorio1

5a)EscribaunprogramaquedeterminelaparidaddesunmerodeLibreta Univer sitaria.Sugerencia:asignealavariablelibretasunmerodeLU.Determinesielvalor delavariablelibretaesparoimparmedianteelusodelafuncindeScilabmodulo. Asignealavariablemensajeelstringesparoesimparsegncorresponda.Utilice la sentencia condicional if para tal fin y muestre el mensaje en pantalla segn correspondausandolasentenciadisp. b)Escribaenunarchivounafuncin paridad, querealicelamismaoperacinqueel programadea),cuyoparmetrodeentradaseaelnmerodeLibretaUniversitariayla salidaelmensaje.CarguelafuncinenScilabyemplelaparadeterminarlaparidadde variosescalares. Ciclo incondicional for: se emplea para ejecutar operaciones que se repiten, principalmente cuando se conoce el nmero de veces que deben realizarse. Por ejemplo,quieromostrarlosnmerodel1al10enpantalla,parahacerestodebera escribir:
disp(1) disp(2) disp(3) . disp(10)

opodraresumirelprocesohaciendo
para n=1 hasta 10 disp(n) fin

Lasintaxisdelcomandoforeslasiguiente:
for variable=expr sentencia(s) end

ylasecuenciadelejemploseescribe:
for n=1:10 disp(n) end

Los diez nmeros a mostrar pueden ser los elementos v(i) de un vector , por ej. v=(2,3,5,2,5,7,9,0,8,1). En este caso podemos emplear el ciclo for para leer los elementosdelvectordado:
v=[2,3,5,2,5,7,9,0,8,1]; for i=1:10 disp('El elemento '+string(i)' +' es igual a '+string(v(i))) end

UniversidadNacionaldeSalta FacultaddeCienciasExactas DepartamentodeFsica

Laboratorio1

6Escribaunprogramaqueempleelafuncinescritaen5b)paradeterminarlaparidad de100nmerosintroducidosenunvector. 7Ejecuteelsiguienteejemplo:


dias=["domingo","lunes","martes","miercoles","jueves","viernes","sabado"]; disp("Dias laborables"); for i=1:7 if(i>1)&(i<7) disp(dias(i)); end; end;

ModifiqueelprogramaanteriorparaqueimprimalosdasdeclasedeLaboratorio1.

Sentenciacondicionalselectcase:esparecidaalcondicionalif,seejecutaunconjunto desentenciasuotrodependiendodelvalorquetomaunavariable.Lasintaxisesla siguiente:


select expr0, case expr1 then instruc_1, case expr2 then instruc_2, ... case exprn then instruc_n, [else instructions], //optativa end

Comoejemplo,ejecuteelsiguienteprograma:
opcion=input('Introduzca un nmero entero entre 1 y 4'); select opcion case 1 then 'Ha seleccionado la opcin '+string(opcion) disp('Este programa no har nada') case 2 then 'Ha seleccionado la opcin '+string(opcion) disp('Ha ganado un milln de pesos!!!') case 3 then 'Ha seleccionado la opcin '+string(opcion) for i=1:5 disp('Me gusta programar con Scilab') end end

8Apartirdelasiguientedefinicin: vector=1:1:12 Escribaunprogramaquemuestreenpantallaelnombredelmesdelao,(mes 1:Enero,2:Febrero,etc).Hagausodelasentenciacondicionalcase.

UniversidadNacionaldeSalta FacultaddeCienciasExactas DepartamentodeFsica

Laboratorio1

9Escribaunafuncinquetengacomoparmetrodeentradaunvectordedimensinny como salida la suma de los elementos del vector: a) empleando un ciclo for, b)empleandolafuncinsumdeScilab. 10Modifiquelafuncinanteriorparaquerealicelamismatareamedianteelempleode unciclocondicionalwhile. 11Escribaunafuncinquecalculeelfactorialdeunnmerodeterminado.Elclculo del factorial debe incluir un ciclo for. Luego compare el resultado obtenido con la funcinfactorialincluidaenScilab. 12Modifiqueelprogramaanteriorparaquerealicelamismatarea,empleandounciclo dowhile. 13Escribaunprogramaquepermitaingresardesdetecladounamatrizdemfilasyn columnas,elementoporelemento.Hagausodeundoblecicloforanidado.

14Ingreseunamatrizde4filasy4columnas.Obtengaunvectorqueestformadopor los elementos de la diagonal principal de la matriz anterior. Verifique su resultado comparandoconelobtenidomediantelafuncindeScilabdiag. 15Escribaunprogramaquedeterminesiunnmero introducidoenpantallaporel usuarioesprimo. 16Escribaunprogramaquecalculelasracesdeunaecuacincuadrtica.Elprograma debeindicarsilasracessonrealesoimaginarias. 17Escribaunprogramaquedadounvectorde10elementos(ingresadosporelusuario) calculeelpromediodelosparesylasumadelosimpares.Muestreambosresultadosen pantalla. 18Escribaunprogramaqueingreseunamatrizdemfilasyncolumnas,sim=nsume loselementosdeladiagonalprincipalymuestreelresultado,encasocontrariomuestre una advertencia de que la operacin no puede realizarse porque la matriz no es cuadrada. 19Escribaunprogramaqueobtengalamatriztriangularsuperiordeunamatrizdem filasyncolumnasingresadaporelusuario.

Вам также может понравиться