61
Prof. Esp. Ing. José María Sola Universidad Tecnológica Nacional Facultad Regional Buenos Aires Departamento de Ingeniería en Sistemas de Información K1051 2017

K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

  • Upload
    others

  • View
    3

  • Download
    0

Embed Size (px)

Citation preview

Page 1: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Prof.Esp.Ing.JoséMaríaSola

UniversidadTecnológicaNacionalFacultadRegionalBuenosAires

DepartamentodeIngenieríaenSistemasdeInformación

K1051

2017

Page 2: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Mar23,Jueves

Page 3: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Agendaparaestaclase� BienvenidosalaUniversidadyalcurso� Presentacióninicial,conozcámonos� ElcontextodeAED�  SobrelaCátedraylaAsignatura�  Laaprobaciónylaregularización� PlataformadelCurso�  SobreelLenguajeC++� Primercontactoconlaprogramación� TrabajoPráctico#0� Términosdelaclase� Tareasparalapróximaclase.

Prof. Esp. Ing. José María Sola 3

Page 4: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Conozcámonos

Page 5: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

DocentesdelCurso� ProfesoraCargo

�  Esp.Ing.JoséMaríaSola� Auxiliares

�  Srta.ElizabethSosa

Prof. Esp. Ing. José María Sola 5

Page 6: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

EnlaClaseyHorarios� Primerasfiladebancolibresparaelproyectoryparaotromaterial(sielaulanotieneproyectorintegrado)

� Entrarysalirporpuertatrasera(sielaulalatiene)� Celular,ensilencioovibrador� Horariosdelcurso

�  5horascátedraconintervalode15minutos�  3horasreloj+intervalode15o20minutos

�  19:00a�  Intervalo20:30o20:45

�  23:00� Consultaspresenciales,antesydespuésdeclase.

Prof. Esp. Ing. José María Sola 6

Page 7: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del
Page 8: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

AnálisisdelTítulodelaCarrera–IngenieríaenSistemasdeInformación�  Ingeniería

�  Aplicacióntecnología—cienciaytécnicas—pararesoluciónproblemas

�  Construccióndesoluciones�  Sistema

�  Conjuntoelementosrelacionadosconobjetivocomún

�  Información�  Datosprocesados�  Materiaprimaparatomade

decisiones�  Datovalorsintáctico�  Informaciónvalorsemántico.

�  SistemadeInformación�  Sistemamanualoautomático

con�  personas,máquinasométodosque�  procesainformación

�  recolecta,transmite,almacenadistribuye,presentaymanipula

�  informaciónparasususuarios�  entiempoyforma

�  Engeneral,lossistemasdeinformacióntienengrandespartesimplementadasconSistemasSoftware

�  LaprogramaciónylaconstruccióndeSistemasSoftware.

Prof. Esp. Ing. José María Sola 8

Page 9: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

RoldelaMateriaenlasAcAvidadesdelIngenieroenSistemasdeInformación

Organización

SistemadeInformación

Proyecto

Problema(Necesidad)

Desarrollo

Análisis Diseño Implementación

Solución

Prof. Esp. Ing. José María Sola 9

Page 10: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

LasAsignaturasParalelas� MatemáticaDiscreta�  SistemasyOrganizaciones

Prof. Esp. Ing. José María Sola 10

Page 11: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

�  Objetivos�  Aplicarmétodosinductivos,

deductivosyrecursivosenlaresolucióndesituacionesproblemáticasydemostracionesmatemáticas

�  Comprenderlosconceptosyprocedimientosnecesariospararesolverrelacionesderecurrencia

�  Aplicarpropiedadesyfuncionesdefinidasenlosnúmerosenterosyenterosnonegativos

�  Caracterizardistintasestructurasalgebraicas,enfatizandolasqueseanfinitas

ylasálgebrasdeBoole�  Aplicarpropiedadesdegrafos,

dígrafosyárbolesenlaresolucióndesituacionesproblemáticas

�  ContenidosMínimos�  LógicaProporcionalClásicay

dePredicadosdePrimerOrden�  TeoríadeNúmeros�  InducciónMatemática�  RelacionesdeRecurrencia�  EstructurasAlgebraicasFinitas

yAlgebradeBoole�  Grafos,dígrafosyárboles.

MatemáAcaDiscreta

Prof. Esp. Ing. José María Sola 11

Page 12: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

AEDenlaCarrera

Asignatura

Área

CarreraIngenieríaenSistemasdeInformación

Programación

AED Otras

Otras

Otras

Prof. Esp. Ing. José María Sola 12

Page 13: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

ÁreaProgramación� Objetivos

�  Formareinformaracercademetodologías,técnicasylenguajesdeprogramación,comoherramientasbásicasparaeldesarrollodesoftwareyelestudiodedisciplinasquepermitancrearnuevastecnologías

� Asignaturas(640hs)�  1.MatemáticaDiscreta(96hs)�  2.AlgoritmosyEstructurasdeDatos(160hs)�  3.SintaxisySemánticadelosLenguajes(128hs)�  4.ParadigmasdeProgramación(128hs)�  5.GestióndeDatos(128hs).

Prof. Esp. Ing. José María Sola 13

Page 14: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

IntegraciónconotrasAsignaturasyConceptosPrincipales�  IntegraciónenÁreadeProgramación

�  Integraciónvertical�  ParadigmasdeProgramación�  SintaxisySemánticadeLenguajes

�  IntegraciónHorizontal�  MatemáticaDiscreta

�  Integraciónconotrasáreas�  Computación�  SistemasdeInformación

�  Abstracción(conceptofundamental)�  Separación,dejardeladolosdetallesparaenfocarenloimportante

�  OrientaciónaObjetos�  Objeto:entidadconcomportamientoyquemantieneunestado.

Prof. Esp. Ing. José María Sola 14

Page 15: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del
Page 16: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del
Page 17: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

AnálisisdelNombredelaAsignatura–AlgoritmosyEstructurasdeDatos� Algoritmos

�  Pasospararesolverunproblemageneral�  Datosdeentrada�  Listadepasos�  Salidaresultante

� Datos�  Valoresdeunconjunto� Datum� DatoversusInformaciónversusConocimiento

� Estructura�  Relacionesentreentidadesparaalmacenardatos

� TipodeDatosProf. Esp. Ing. José María Sola 17

Page 18: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

GeneralidadesdeAEDOrdenanza1150/2007�  Departamento IngenieríaenSistemasdeInformación�  Bloque TecnologíasBásicas�  Área Programación�  Nivel 1�  Horas/semana 5�  Horas/Año 160�  Correlatividades

�  Anteriores:Ninguna�  Siguientes

�  Debeestarregularizadaparacursar�  AnálisisdeSistemas(2do)�  SintaxisySemánticadelosLenguajes(2do)�  ParadigmasdeProgramación(2do)�  SistemasOperativos.(2do,acordeaordenanza1150/2007)

�  Debeestaraprobadaparacursar�  DiseñodeSistemas(3ro)�  GestióndeDatos(3ro)�  Ecnomía(3ro)�  RedesdeInformación(4to,acordeaordenanza1150/2007)�  Legislación(4to)

Prof. Esp. Ing. José María Sola 18

Page 19: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Objetivos ContenidosMínimos�  Identificarproblemas

algorítmicos�  Conocerelproceso

dediseñoeimplementacióndesoftware

�  Aplicarlasherramientasfundamentalesrepresentativasdelosprocesos,integrandolasintaxiselementaldeunlenguajedeprogramaciónenellaboratorioasociado

�  ConceptodeDato�  TiposdeDatosSimples�  TipoAbstractodedatos�  EstructurasdeControlBásicas:secuencial,

condicional,cíclica�  EstrategiasdeResolución�  EstructurasdeDatos:registros,arreglosyarchivos�  Abstraccionesconprocedimientosyfunciones�  PasajedeParámetros�  EstructurasdeDatoslineales(Pilas-Colas)�  AlgoritmosdeBúsqueda,Recorridoy

Ordenamiento�  ArchivosdeAccesoSecuencialyAleatorio:

organizacionesyaccesos.�  ProcesamientoBásico�  Recursividad�  NocionesdeComplejidadComputacional�  NocióndeOrdendeComplejidad.

ProgramaSintéAcodeAEDOrdenanza1150/2007

Prof. Esp. Ing. José María Sola 19

Page 20: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

LosTemasdeAED

TiposdeDatos

Algoritmos

ResolucióndeProblemas

ANSIC++(subconjunto)

Prof. Esp. Ing. José María Sola 20

AED

Page 21: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

LaCátedra� Dr.Mg.OscarBruno,ProfesorAsociadoOrdinario

�  CoordinadordelaCátedra� @orbruno�  droscarbruno.wordpress.com

Prof. Esp. Ing. José María Sola 21

Page 22: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del
Page 23: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Aprobación–ExamenFinal� Requisitoparaaprobación

�  Regularizaciónyaprobacióndelexamenfinal�  AprobaciónDirecta

� Examenfinal�  Cuatrooportunidades

Prof. Esp. Ing. José María Sola 23

Page 24: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

�  75%deAsistencia(Bedelía)

� Evaluaciones(Cátedra)�  Características

�  Grupaleseindividuales�  Deaplicacióno

conceptuales�  Evaluaciónfrecuentes�  TrabajosPrácticos,

entregassemanales

�  Instancias�  Unaevaluaciónescrita

individualenelprimercuatrimestre,otraenelsegundo

�  Trabajosprácticos�  Comunesatodosloscursos�  Propiosdelcurso

�  Dosrecuperatorios,enDicyenFeb

�  Lasfechasseestablecenduranteelcurso

�  AlFinalizarelcurso�  Evaluaciónindividualoraloescrita("coloquio”)

�  Conocimientosdelostrabajosprácticos.

RequisitosparalaRegularización(i.e.,Firma)

Prof. Esp. Ing. José María Sola 24

Page 25: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

AprobaciónDirecta�  Nohabersidoreincorporado�  Todoaprobadoy,paralasevaluacionesconnotanumérica,connotamayoroiguala8

�  Nohaberrecuperadoningúnparcialosólounexamenparcial.

�  SedebecumplirentiempoyformacontodaslasentregasdelosTPdecomunesatodosloscurso

�  LosTPdelcursoseapruebanenlaprimeraoportunidadoenelprimerrecuperatorio

�  HaydosinstanciasdedeterminacióndelestadodeAprobaciónDirecta:�  EnNoviembre,antesdefinalizarlacursada

�  DuranteDiciembre�  QuieneslleguenalossegundosrecuperatoriosdeFebrero-Marzo,nologranlaaprobacióndirecta

�  Setratacomocasoespecialquientengaunanotacon7(siete)ycumpleconelrestodelosrequisitos.

Prof. Esp. Ing. José María Sola 25

Page 26: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

RequisitosparalaRegularización(i.e.,Firma)�  75%deAsistencia(Bedelía)� Evaluaciones(Cátedra)

�  Grupaleseindividuales,� Deaplicaciónoconceptuales�  Evaluaciónfrecuentes�  TrabajosPrácticos,entregassemanales� Dosrecuperatorios,enDicyenFeb�  Lasfechasseestablecenduranteelcurso�  Findelcurso

�  Evaluaciónindividualoraloescrita("coloquio”)�  Conocimientosdelostrabajosprácticos.

Prof. Esp. Ing. José María Sola 26

Page 27: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

DinámicadeTrabajo�  Indicacióndelecturasyejerciciosobligatoriosparasiguienteclase

� Profundizacióndeconceptosenclase� Claseinteractivayparticipativa

�  Serecomiendaseguirlaclaseconlabibliografíaytomarapuntesalapar

� Ejerciciosdeaplicaciónenclase� Consultas

� Duranteclase,yjustoantesdeiniciaryfinalizarlaclase�  Enotroshorarios,atravésdelForoenYahooGroups.

Prof. Esp. Ing. José María Sola 27

Page 28: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Herramientasparafacilitarlacursada

Page 29: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

ClasesPresenciales

josemariasola.wordpress.comHomepagedel

curso

Bibliografíadroscarbruno.wordpress.com

GitHubPapersy

Resolucionesdecadaequipo

YahooGroupsUTNFRBAAED

Foroparaconsultasyanuncios

GoogleCalendarCaledariocondetalle

deactividades

PlataformadelCurso

Prof. Esp. Ing. José María Sola 29

Page 30: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

josemariasola.wordpress.com� HomepagedelCurso� Papers� Referencia� Tareas� Equipos� Calendario� ResúmenesdeClases� AccesoaForo� AccesoaGitHub.

Prof. Esp. Ing. José María Sola 30

Page 31: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Bibliogra\a�  Obligatoria

�  https://droscarbruno.wordpress.com/algoritmos-desarrollo-de-temas/

�  Recomendada�  SobreProgramación

�  [Avanzado]Kernighan,B;Pike,R.Laprácticadelaprogramación.2000.Pearson:México

�  [Inicial]GarcíaMolina,J;MontoyaDato,F;otros.Unaintroducciónalaprogramación:unenfoquealgorítmico.2005.Thomson:España

�  SobreelLenguajeC++�  [Avanzado]Stroustrup,B.ElLenguajedeProgramaciónC++.2013.

AddisonWesley�  [Inicial]Deitel,H;Deitel,E.CómoprogramarenC/C++.1994.Prentice

Hall:México�  Otrosartículosalolargodelcurso,publicadosdesdelapáginadelcurso.

Prof. Esp. Ing. José María Sola 31

Page 32: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

GrupoYahooUTNFRBAAEDh`ps://groups.yahoo.com/group/UTNFRBAAED

Prof. Esp. Ing. José María Sola 32

Page 33: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

�  Objetivos�  Canaldecomunicación�  Materialesdelectura�  Consultas�  Enunciados�  Anunciosparticularesdelcursoy

generales�  Antesdecadaclasesedeberevisarsi

haynovedadesenelgrupo�  Periododesuscripción

�  durantelastresprimerassemanasdelcuatrimestre

�  Siyaestáinscriptonoesnecesarioreinscribirse

�  Requisitosparasuscripción�  UsuarioYahooconnombrey

apellido

�  Cuentadee-mail(decualquierdominio)connombreyapellido,asociadaalusuarioYahoo

�  Desdelapáginadesuscripción,completarformulariocon�  nombreyapellido,�  legajoy�  códigodecurso

�  Comunicación�  Elsubject(asuntodelmensaje)

debecomenzarconelcódigodecursoydebeserdescriptivo

�  Sedebefirmarconnombreyapellido

�  NoestánpermitidoslosOff-Topic

�  ReglasparaelusodelgrupoYahooenlasecciónFiles(archivos)delpropiogrupo.

GrupoYahooUTNFRBAAEDh`ps://groups.yahoo.com/group/UTNFRBAAED

Prof. Esp. Ing. José María Sola 33

Page 34: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

�  SistemadeControldeVersiones(VCS)�  Gestióndecambios

sobreproductoosuconfiguración

�  Ejemplos:Git,Mercurial,ySubversion

�  Git�  VCSdistribuido,2005

porLinusTorvaldsparaelkerneldeLinux

�  GitHub�  Servicioque

implementaGit�  Otrossimilares:

Bitbucket,GitLab,Gitorious,CloudForge

�  ¿PorquéGitHubenelCurso?�  Tienepepositorios

públicos,yprivadosparauniversidades

�  Es,paramuchos,elprimercontactoconunVCSdistribuido,yconlenguajesdemarcalivianos,comomarkdown

�  Esmáseficientequetrabajosimpresos

�  Poseeinterfacesweb,deescritorio,ymóvil

�  ¿Paraqué?�  Avancedecadaestudiante

ydecadaequipo.�  Interacciónentrealumnos

yconlacátedrasimilararedsocial

�  Seguimientodecorreccionesymejoras

�  Repositoriosduranteelcurso�  Primerasclases

�  Repositorioindividual�  Luego,usodela

Organizaciónutn-frba-aed�  Paralosmiembrosdel

cursoasignamosunarepositorioprivado,dentroutn-frba-aed,acadaequipo

�  https://github.com/orgs/utn-frba-aed/

�  PrimerosPasosenGitHub1.  Leerguía"Git101”2.  CrearUsuario3.  CrearRepositorio.

GityGitHubh`ps://github.com/orgs/utn-frba-aed

Prof. Esp. Ing. José María Sola 34

•  https://josemariasola.wordpress.com/aed/git/

Page 35: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

LenguajesyHerramientasdeDesarrollo

Page 36: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Historia ConjuntosdeinfinitosprogramasválidosdeC++yC

�  1970's�  C�  CWithClasses

�  1980's�  ComienzastandardC�  C++

�  1990's�  StandardC90�  StandardC++98

�  2000's�  StandardC99�  StandardC++03

�  2010's�  StandardC11�  StandardC++11,14,17.

C++

C

SobrelosLenguajesCyC++

(representa probabilidad)

Prof. Esp. Ing. José María Sola 36

Page 37: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

/* Hello World JMS 20130411 */ #include <iostream> int main() { std::cout << "Hello, World!\n"; }

�  Propósito�  Comentarioencabezado

�  Qué�  Títulodescriptivo

�  Quién�  NúmerodeEquipoeintegrantes

�  Cuándo�  Seactualizóporúltimavez

"Hello,World!"

Prof. Esp. Ing. José María Sola 37

Page 38: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Procesobásicoparadesarrollarprogramas1.   Escribirelprogramaconuneditordetexto(e.g.,vi,

Notepad,TextPad,Sublime,TextMate,Notepad++,Notepad2).EsconvenciónparalosarchivosfuentedeC++laextensiónsea.cpp(e.g.,hello.cpp)

2.   Compilarelarchivofuenteparaproducirelprogramaobjeto(e.g.,c++hello.c)……yVincular(link)elprogramaconlasbibliotecasparacrearelprogramaejecutable;generalmenteocurrejuntoconelpuntoanterior.

3.   Ejecutarelprograma(e.g.,hello.exeó./a.out)4.  ¿Erroren2ó3?Volvera1yrepetir.

Prof. Esp. Ing. José María Sola 38

Page 39: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

EjemplodesdelíneadecomandoMacOSXC++141.  Desdelalíneadecomando

1.  >vihello.cpp crearelfuente2.  >c++hello.cpp-std=c++14-Weverything

crearelejecutable enrealidad:Preprocesador→Compilador→Linker

3.  >./a.out ejecutarHello,World! salida

2.  Sihayunerrorenelpaso2ó3,volveral1yrepetir2y3

Prof. Esp. Ing. José María Sola 39

Page 40: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

EjemplodesdelíneadecomandoCompiladorMicrosoh1.  Desdelalíneadecomando

1.  >notepadhello.cpp crearelfuente2.  >clhello.cpp crearelejecutable

enrealidad:Preprocesador→Compilador→Linker3.  >hello.exe ejecutar

Hello,World! salida2.  Sihayunerrorenelpaso2ó3,volveral1yrepetir2y3

Prof. Esp. Ing. José María Sola 40

Page 41: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

EjemplodesdelíneadecomandoCompiladorBorland1.  Desdelalíneadecomando

1.  >notepadhello.cpp crearelfuente2.  >bcc32hello.cpp crearelejecutable

enrealidad:Preprocesador→Compilador→Linker3.  >hello.exe ejecutar

Hello,World! salida2.  Sihayunerrorenelpaso2ó3,volveral1yrepetir2y3

Prof. Esp. Ing. José María Sola 41

Page 42: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

� ConIDE(IntegratedDevelopmentEnviroment,EntornoIntegradodeDesarrollo)�  Ejemplos

�  AppleXcode�  MicrosoftVisualC++

ExpressEdition�  Eclipse

�  SinIDE�  Editor�  Compilador. CompiladordeC/C++

ConIDE·Editor·Depurador·GestordeProyectosydeconfigu-raciones·Ayuda·ymás…

SinIDERequiereeditor

HerramientasdeDesarrollo:SobreelCompiladoryelIDE

Prof. Esp. Ing. José María Sola 42

Page 43: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

EjemploconIDEMicrosohVisualStudioExpressforWindowsDesktop

Prof. Esp. Ing. José María Sola 43

Page 44: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

EjemploconIDEAppleXCode

Prof. Esp. Ing. José María Sola 44

Page 45: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

�  ConIDEyLíneadeComandos�  MicrosoftVisualStudioExpress

2015forWindowsDesktop�  https://www.visualstudio.com/

downloads/#d-express-windows-desktop

�  AppleXcode�  https://developer.apple.com/xcode

�  Dev-C++�  http://orwelldevcpp.blogspot.com

�  EclipseIDEforC/C++Developers�  http://www.eclipse.org/downloads/

packages/eclipse-ide-cc-developers/neon2

�  Code::Blocks�  http://www.codeblocks.org/

downloads/

�  SinIDE,soloLíneadeComandos�  GNUCCompiler(ahoraGNU

CompilerCollection)�  http://gcc.gnu.org/install/

binaries.html�  FreeC++Compiler

�  https://www.embarcadero.com/free-tools/ccompiler

�  BorlandC++Compilerversion5.5FreeDownload�  http://edn.embarcadero.com/article/

20633�  UsingtheBorland5.5Compilerand

command-linetools�  http://edn.embarcadero.com/article/

20997�  BorlandC++5.5FreeCommand-line

ToolsSupplementaryInformation�  http://edn.embarcadero.com/article/

21205

LinksaCompiladoresC/C++

Prof. Esp. Ing. José María Sola 45

Page 46: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

TrabajoPrácAco#0—"Hello,World!"enC++�  SecuenciasdeTarea

�  SolicitiarinscripciónalGrupoYahoo.�  RegistrarseenGitHub�  Crearunrepositoriopúblicoconelnombre`CppHelloWorld`.�  Seleccionar,instalar,yconfiguraruncompiladorC++14.�  Probarelcompiladorconunprograma`hello.cpp`queenvíea`cout`

lalínea`Hello,World!`osimilar.�  Ejecutarelprograma,ycapturarsusalidaenunarchivodetexto

`output.txt`.�  Publicar`hello.cpp`y`output.txt`enGitHub.�  [email protected]

GitHub.�  Restricciones

�  Lafechalímitedeentregaeseldíadelasegundaclasealas13:00hs�  LaevaluaciónsehaceconlopublicadoenGitHub.

Prof. Esp. Ing. José María Sola 46

Page 47: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Términosdelaclase#Definircadatérminoconlabibliogra\a�  Programación�  LenguajedeProgramación�  Comportamiento�  Software�  Ingeniería�  Sistema�  Información�  IngenieríaenSistemasdeInformación�  SistemadeInformación�  Proyecto�  Problema(Necesidad)�  Solución�  Desarrollo�  Análisis�  Diseño�  Implementación�  Organización�  Abstracción

�  OrientaciónaObjetos�  Algoritmo�  Dato�  Estructura�  EstructuradeDatos�  TiposdeDatos�  ISCV(SistemadeControldeVersiones)�  Git�  GitHub�  Repositorio�  C�  C++�  IDE(IntegratedDevelopmentEnviroment,

EntornoIntegradodeDesarrollo)

01

Prof. Esp. Ing. José María Sola 47

Page 48: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Tareasparalapróximaclase1.  RealizarTP#0"Hello,World!”.

Prof. Esp. Ing. José María Sola 48

Page 49: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del
Page 50: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del
Page 51: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Marzo30,Jueves

Prof. Esp. Ing. José María Sola 51

Page 52: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Agendaparaestaclase� Repasodeclaseanterior� EstadodeTP#0� Análisisde"Hello,World!"Hola.cpp� TP#1Adición

Prof. Esp. Ing. José María Sola 52

Page 53: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

/* Hello World * JMS * 20130411 */ #include <iostream> int main() { std::cout << "Hello, World!\n"; }

�  Análisisdesdeelinterioralexterior�  Cadena�  Operadordeenvíooinserción�  Objetocout�  Funciónmain�  #include

�  ModeloConsola�  Flujodedatos

�  DeEntrada�  Origen:Teclado

�  DeSalida�  Destino:Pantalla

�  Procesamientoderenglones

AnálisisdeHelloWorld

Prof. Esp. Ing. José María Sola 53

Page 54: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

�  Problema�  Escribirlospasosparamostrarlasumadedosnúmerosqueingresaelusuario.

�  Algoritmo�  Secuenciadepasosquecondatosgeneraresultados

�  Léxico�  Definicióndeelementosutilizadosenelalgoritmo,ejemplo:

�  Resoluciones�  RepresentacionesGráficas

�  Lindsay/Chapin�  Nassi–Shneiderman(NS)�  Abstracta:Digrafo

�  ¿Quérepresentanlasflechas?

�  ¿Quérepresentanlosnodos?

�  Textuales�  Secuenciadepasosen

casellano�  Pseudocódigo

�  LenguajesdeProgramación�  C++.

Problema:Adicióndedosnúmeros

Prof. Esp. Ing. José María Sola 54

x ∈ R

Page 55: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

AdiciónyEntradaEstándar/* JMS * 20130411 * Adición */ #include <iostream> int main(){ int a; int b; std::cin >> a; std::cin >> b; std::cout << a + b; }

Prof. Esp. Ing. José María Sola 55

Page 56: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Proceso

Prof. Esp. Ing. José María Sola 56

PIInput Datos

(Entrada)

Output Resultados

(Salida)

O

Proceso, requiere recursos

espacio y tiempo

Page 57: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

TP#1–Adición� Carpeta:Adición

�  Readme.md�  Enunciado�  Análisis:Entradas,Proceso,Salidas�  Algoritmo:VisualoTextual

�  Adición.cpp

Page 58: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Términosdelaclase#Definircadatérminoconlabibliogra\a� Hello.cpp

�  Cadena� Operadordeenvíooinserción

� Objetocout�  Funciónmain�  #include�  Consola�  Flujosdedatosestándar�  Flujosdecarácter� Objetocin

� Addition.cpp�  Algoritmo�  Léxico�  RepresentacionesdeAlgoritmos

�  Lindsay/Chapin�  Nassi–Shneiderman(NS)�  Secuenciadepasosencasellano

�  Pseudocódigo�  ImplementacióndeAlgoritmos

02

Prof. Esp. Ing. José María Sola 58

Page 59: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del

Tareasparalapróximaclase1.  RealizarTP#1Adición.

Prof. Esp. Ing. José María Sola 59

Page 60: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del
Page 61: K1051 2017 - josemariasola.github.io · parcial o sólo un examen parcial. Se debe cumplir en tiempo y forma con todas las entregas de los TP de comunes a todos los curso Los TP del