Size: a a a

2021 January 21

DK

Denis Kim in SwiftBook
ну это совершенно другая задача. это по сути часть модели
источник

В

Виктор in SwiftBook
Denis Kim
ну это совершенно другая задача. это по сути часть модели
я бы мог создать switch с условиями по определенным координатам , но это совсем просто, решил пойти дальше))
источник

В

Виктор in SwiftBook
и вот затуп наступил)
источник

DK

Denis Kim in SwiftBook
просто начинать со слов "делаю морской бой", нет не делаете. и в задаче не нужно его делать. нужно всего лишь написать функцию которая принимает координаты и корабли и возвращает 3 кейса "мимо" "ранил" "убил"
источник

В

Виктор in SwiftBook
Denis Kim
просто начинать со слов "делаю морской бой", нет не делаете. и в задаче не нужно его делать. нужно всего лишь написать функцию которая принимает координаты и корабли и возвращает 3 кейса "мимо" "ранил" "убил"
спасибо, значит до морского боя далековато, буду дальше изучать язык)
источник

K

KurKing in SwiftBook
Виктор
Делаю получается морской бой, реализовал убийство корабля если он занимает 1 клетку, а вот если занимает 2 клетки, то выходит так что счетчик обновляется всегда на 0, и я не убиваю его а просто попадаю, может есть у кого мысли как сделать так чтобы счетчик не обновлялся на 0?
Когда я делаю второй выстрел я обновляю координаты (coordinates) на новые

let ship1 = [(x: 9, y: 9)] // координаты первого корабля
let ship2 = [(x: 5, y: 9), (x: 6, y: 9)] // координаты второго корабля

let ships = [ship1, ship2] // объединение кораблей в один массив

var shots = 0 // выстрелы

let coordinates: (x: Int, y: Int) = (5,9) // координаты выстрела

for ship in ships {
   for cell in ship {
       switch coordinates {
       case let (x, y) where x == cell.x && y == cell.y:
           shots += 1
           if shots == ship.count {
               print("Ship \(ship) down!")
           } else {
               print("Ship \(ship) wounded!")
           }
       default:
           break
       }
   }
}

shots == 0 ? print("Missed") : print()
можно представлять все через матрицу. Я вообще не понял про счетчик чесно говоря. Все клетки отмечены как 0. Клетка, в которой находится корабль отмечена как 1. Если пользователь делает выстрел и попадает в клетку с 0, то получается кейз “мимо”. Если в 1, то отмечает эту клетку как 0 (то есть она убита) и проверяем ее соседей. Если у убитой клетки есть соседи 1, то кейз “попал”, если у убитой клетки все соседи 0, то “убил”
источник

K

KurKing in SwiftBook
но это если я правильно понял условие)))))
источник

СГ

Самур Гусейнов... in SwiftBook
"2021-01-28T08:51:54.199Z" Помогите спарсить это дату и время в DateFormatter(). До буквы T я понимаю, а дальше не могу понять
источник

DY

Dima Yarmolchuk in SwiftBook
Самур Гусейнов
"2021-01-28T08:51:54.199Z" Помогите спарсить это дату и время в DateFormatter(). До буквы T я понимаю, а дальше не могу понять
extension Date {
   static func getFormattedDate(string: String , formatter:String) -> String{
       let dateFormatterGet = DateFormatter()
       dateFormatterGet.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"

       let dateFormatterPrint = DateFormatter()
       dateFormatterPrint.dateFormat = "MMM dd,yyyy"

       let date: Date? = dateFormatterGet.date(from: "2018-02-01T19:10:04+00:00")
       print("Date",dateFormatterPrint.string(from: date!)) // Feb 01,2018
       return dateFormatterPrint.string(from: date!);
   }
}
источник

DY

Dima Yarmolchuk in SwiftBook
так пробовали?
источник

СГ

Самур Гусейнов... in SwiftBook
Dima Yarmolchuk
extension Date {
   static func getFormattedDate(string: String , formatter:String) -> String{
       let dateFormatterGet = DateFormatter()
       dateFormatterGet.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZ"

       let dateFormatterPrint = DateFormatter()
       dateFormatterPrint.dateFormat = "MMM dd,yyyy"

       let date: Date? = dateFormatterGet.date(from: "2018-02-01T19:10:04+00:00")
       print("Date",dateFormatterPrint.string(from: date!)) // Feb 01,2018
       return dateFormatterPrint.string(from: date!);
   }
}
Нет. СПИСБО попробую
источник

DK

Denis Kim in SwiftBook
столько кода ради действия которое делает библиотечный класс
источник

СГ

Самур Гусейнов... in SwiftBook
Denis Kim
столько кода ради действия которое делает библиотечный класс
а как это сделать с помощю библиотеки ?
источник

РГ

Руслан Гриценко... in SwiftBook
Самур Гусейнов
"2021-01-28T08:51:54.199Z" Помогите спарсить это дату и время в DateFormatter(). До буквы T я понимаю, а дальше не могу понять
let RFC3339DateFormatter = DateFormatter()
RFC3339DateFormatter.locale = Locale(identifier: "en_US_POSIX")
RFC3339DateFormatter.dateFormat = "yyyy-MM-dd'T'HH:mm:ssZZZZZ"
RFC3339DateFormatter.timeZone = TimeZone(secondsFromGMT: 0)

/* 39 minutes and 57 seconds after the 16th hour of December 19th, 1996 with an offset of -08:00 from UTC (Pacific Standard Time) */
let string = "1996-12-19T16:39:57-08:00"
let date = RFC3339DateFormatter.date(from: string)
источник

DK

Denis Kim in SwiftBook
Самур Гусейнов
а как это сделать с помощю библиотеки ?
использовать ISO8601DateFormatter с параметрами .withInternetDateTime
источник

DK

Denis Kim in SwiftBook
если миллисекунды критичны, то добавить в параметры .withFractionalSeconds
источник

СГ

Самур Гусейнов... in SwiftBook
Denis Kim
использовать ISO8601DateFormatter с параметрами .withInternetDateTime
спасибо за подсказку
источник

AT

Andriy Tsymbaliuk in SwiftBook
Всем привет!  юзаю SDWebImage на IOS 14 картинку подгружает а на 13 нет... Где копать?
источник

СЛ

Станислав Лемешаев... in SwiftBook
Andriy Tsymbaliuk
Всем привет!  юзаю SDWebImage на IOS 14 картинку подгружает а на 13 нет... Где копать?
Лучше Kingfisher попробовать. Он на Swift'e написан
источник

t

tox in SwiftBook
от alamofire тоже есть для картинок
источник