
기말 시험문제에 출제될 개념

let height = Double(txtHeight.text!)!
let weight = Double(txtWeight.text!)!
print(height,weight)
let bmi = weight/(height*height*0.0001)
let shortenedBmi = String(format: "%.1f", bmi)
var body = ""
if bmi >= 40 {
body = "3단계 비만"
} else if bmi >= 30 && bmi < 40 {
body = "2단계 비만"
} else if bmi >= 25 && bmi < 30 {
body = "1단계 비만"
} else if bmi >= 18.5 && bmi < 25 {
body = "정상"
} else {
body = "저체중" }
print("BMI:\(shortenedBmi), 판정:\(body)")
//var txtHeight: UITextField! var txtWeight: UITextField!


문자열"12"을 숫자로 바꾸면 옵셔널 값으로 변환됨,
이유 : "hi"같은 문자열이 입력되는 경우 정상적인 변환이 불가능함, 따라서 기본적으로 옵셔널로 봔환하는 것이 안전
//
// ViewController.swift
// BBMIcjh
//
// Created by 소프트웨어컴퓨터 on 2025/11/17.
//
import UIKit
class ViewController: UIViewController {
@IBOutlet var txtHeight: UITextField!
@IBOutlet var txtWeight: UITextField!
@IBOutlet var lblResult: UILabel!
@IBAction func calcBmi(_ sender: UIButton) {
if txtHeight.text == "" || txtWeight.text == "" {
print("Input error")
lblResult.text = "키와 체중을 입력하세요"
return
} else {
let height = Double(txtHeight.text!)!
let weight = Double(txtWeight.text!)!
print(height,weight)
let bmi = weight/(height*height*0.0001)
let shortenedBmi = String(format: "%.1f", bmi)
var body = ""
var color = UIColor.white
if bmi >= 40 {
color = UIColor(displayP3Red: 1.0, green: 0.0, blue: 0.0, alpha: 1.0)
body = "3단계 비만"
} else if bmi >= 30 && bmi < 40 {
color = UIColor(displayP3Red: 0.7, green: 0.0, blue: 0.0, alpha: 1.0)
body = "2단계 비만"
} else if bmi >= 25 && bmi < 30 {
color = UIColor(displayP3Red: 0.4, green: 0.0, blue: 0.0, alpha: 1.0)
body = "1단계 비만"
} else if bmi >= 18.5 && bmi < 25 {
color = UIColor(displayP3Red: 0.0, green: 0.0, blue: 1.0, alpha: 1.0)
body = "정상"
} else {
color = UIColor(displayP3Red: 0.0, green: 1.0, blue: 0.0, alpha: 1.0)
body = "저체중" }
print("BMI:\(shortenedBmi), 판정:\(body)")
lblResult.backgroundColor = color
lblResult.clipsToBounds = true
lblResult.layer.cornerRadius = 10 // 코드로 모서리 깎는법
lblResult.text = "BMI:\(shortenedBmi), 판정:\(body)"
//var txtHeight: UITextField! var txtWeight: UITextField!
}
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}

얘도 시험문제 -> 테두리 깎는 두 가지 방법이 무엇인가? 라면서 출제 가능
ㄹㄹ

z order에서 attribute를 선택한 후 inspector창에서 투명 속성 지정 가능






여기도 시험출제 가능
ㅇ
//비디오 삽입 코드
import UIKit
import AVKit
class VideoViewController: UIViewController {
@IBAction func video(_ sender: Any) {
let videoPath: String? = Bundle.main.path(forResource: "bmi", ofType: "mp4")
let videoURL = URL(filePath: videoPath!)
let player = AVPlayer(url: videoURL)
let playerController = AVPlayerViewController()
playerController.player = player
present(playerController, animated: true)
player.play()
}
override func viewDidLoad() {
super.viewDidLoad()
// Do any additional setup after loading the view.
}
}
시험
present, default, guard-let 활용
ㅇ
'computing' 카테고리의 다른 글
| android11 (0) | 2025.11.13 |
|---|---|
| 20251103_iOS10 (0) | 2025.11.03 |
| 20251030_android8 (0) | 2025.10.30 |
| 20251027_iOS9 (0) | 2025.10.27 |
| 20251013_iOS_7주차 (0) | 2025.10.13 |