Skip to content
Open
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Binary file added .DS_Store
Binary file not shown.
Original file line number Diff line number Diff line change
@@ -0,0 +1,22 @@
/*:
# Everyone Can Code @ Laboratoria

## Primer Examen Parcial

19-Oct-2019

La idea de este examen es que estudies lo que hemos visto en clase e identifiques donde están tus fortalezas y debilidades. El examen está pensado para que lo resuelvas en 30 min.

¡Recuerda, el examen es INDIVIDUAL!

Antes de comenzar:
- Recuerda contestar la copia de este examen dentrode la carpeta con tu nombre. Si no sabes a qué me refiero, revisa README.md del siguiente repositorio: https://github.com/ECC-Laboratoria/BeautifulTests

Teoría:
- En esta sección contesta con comentarios la respuesta correcta

Swift:
- Tu respuestas deberán estar escritas en Swift.

*/
//: [Next](@next)
Original file line number Diff line number Diff line change
@@ -0,0 +1,71 @@
//: [Previous](@previous)

import Foundation

//: ## Swift
//: Y finalmente, unas preguntas sobre Swift. ¡Vamos!

//: 1. Escribe un hola mundo en Swift
//Respuesta:
print("Hola mundo")

//: 2. Escribe un ejemplo de String Interpolation
//Respuesta:
var name = "Pato"
print("Hola \(name)")
//: 3. Declara un arreglo constante de tipo Double con los siguientes elementos: 1.0, 5.0, 33.3, 45.5
//Respuesta:
let numbers: [Double] = [1.0, 5.0, 33.3, 45.5]

//: 4. Usando un ciclo for, itera sobre el arreglo de la pregunta 3 e imprime cada uno de los elementos del arreglo.
//Respuesta:
for number in numbers {
print("\(number)")
}

//: 5. Declara la enumeración llamada Planet y como casos ocupa los siguientes:
//: - Mercury
//: - Venus
//: - Earth
//: - Mars
//Respuesta
enum Planet {
case Mercury, Venus, Earth, Mars
}
//: 6. Declara una constante llamada planet y asígnale un caso de la enumeración Planet (el caso que quieras)
//Respuesta:
Planet.Mars
//: 7. Utiliza una sentencia switch para imprimir un mensaje dependiendo del valor de la constante planet de la pregunta 6.
//Respuesta:
var red = Planet.Mars
switch red {
case .Mars:
print("Is the red planet")
default:
print("Is a nice place")
}
//: 8. Declara una función llamada ```haveRead()``` que tome como parámetro el arreglo de cadenas ```books``` y la cadena ```book``` y regrese un booleano. La idea de esta función es determinar si la cadena ```book``` se encuentra dentro de ```books```

let books = ["The Fountainhead", "Atlas Shrugged", "Why Nations Fail", "The Principles of Scientific Managemente", "Factfulness", "Outliers", "El Existencialismo es un Humanismo", "The Old Man and the Sea", "El Arte de Pensar", "Six Easy Pieces", "Steve Jobs", "Energy and Civilization: A History", "A History of Judaism"]
let book = "Outliers"

//Respuesta:
func haveRead(_ books:String,book:String){
}
//: 9. Finalmente, crea una estructura llamada ```Person``` que tenga como atributos:
//: - name: String
//: - books: [String]
//: y como método la función de la pregunta 8 sin el parámetro ```books```.
//: Crea una instancia de ```Person``` e inicialízala con tu nombre y ocupa la constante ```books``` de la pregunta 8 como segundo parámetro. Finalmente, manda a llamar al método ```haveRead()``` y pásale como parámetro la constante ```book``` de la pregunta 8. El resultado debe ser un booleano.

//Respuesta


struct Person {
var name: String
var books: String

func haveRead(book) -> <#return type#> {
<#function body#>
}
}
Original file line number Diff line number Diff line change
@@ -0,0 +1,60 @@
//: [Previous](@previous)

//: ## Teoría
//: Bienvenida al hermoso mundo de la teoría. Contesta las siguientes preguntas.

//: 1¿Qué hace el archivo ViewController.swift?
/*
Respuesta: Es la parte donde se pone el codigo que va a reaccionar a las interacciones de los usuarios

*/

//: 2. ¿Qué puedes hacer dentro del archivo Main.storyboard?
/*
Respuesta: Es la parte donde se muestra una representacion de la interfaz grafica del usuario

*/

//: 3. ¿Cuál es la diferencia entre IBOutlet y IBAction?
/*
Respuesta: El primero sirve para enlazar los objetos definidos en la interfaz grafica con las funciones
el segundo sirve para modificar los eventos que se muestran en la pantalla

*/

//: 4. ¿Menciona al menos una ventaja al utilizar UIStackView?
/*
Respuesta: permite agrupar los objetos, como botones o imagenes, en las vistas. tambien asigna automaticamnet elos constrains en las vistas, por lo queno hay necesidad de asignarlo de forma individual a cada elemnto

*/

//: 5. ¿Cuál es la versión más actual de Swift y iOS?
//: a) Swift: 4.0 iOS: 13
//: b) Swift: 5.0 iOS: 10
//: c) Swift: 4.0 iOS: 11
//: d) Swift: 5.0 iOS: 13
/*
Respuesta: d

*/

//: 6. ¿Qué tengo que hacer para que mi interfaz sea vean *bien* en todos los dispositivos (Por *bien* me refiero a que si pongo un botón en el centro de mi vista y al girarlo, ese botón se siga viendo en el centro)?
//: - a) Diseñar una interfaz para cada dispositivo
//: - b) Agregar constraints
//: - c) Ninguna de las anteriores
/*
Respuesta: b

*/

//: 7. Supón que tienes un UIButton dentro de una vista A y quieres hacer una transición a otra vista B al presionar ese botón. ¿Qué tienes que hacer si quieres que la vista B aparezca de derecha a izquierda?
//: - a) Embeber la vista A dentro de un UINavigationController > Ctrl + Drag del botón a la vista B > Método de presentación: Show
//: - b) Embeber la vista B dentro de un UINavigationController > Ctrl + Drag del botón a la vista B > Método de presentación: PresentModally
//: - c) Ctrl + Drag del botón a la vista B > Método de presentación: Show
//: - d) Ctrl + Drag del botón a la vista B > Método de presentación: PresentModally
/*
Respuesta: a

*/

//: [Next](@next)
Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<playground version='6.0' target-platform='ios' display-mode='rendered'>
<pages>
<page name='Introducción'/>
<page name='Teoría'/>
<page name='Swift'/>
</pages>
</playground>

Some generated files are not rendered by default. Learn more about how customized files appear on GitHub.

Original file line number Diff line number Diff line change
@@ -0,0 +1,8 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>IDEDidComputeMac32BitWarning</key>
<true/>
</dict>
</plist>
Binary file not shown.
Binary file not shown.