EvgeniyRava: я увидел тут 2 задачи: уйти от четных и не начинать с 2. p+=2 означает, что мы приращиваем индекс на 2, а не на 1. В случае, когда мы начинаем с нечетного числа, все значения p будут неченые, т.е. не делятся на 2. В остальном проверяем как и было. d = 3 т.к. по условиям не нужно проверять деление на 2 и начинаем с нечетного как в первом случае
ManWithBear: Это не имеет отношения к сути вопроса, "под капотом" везде - двоичный код. Мало ли, что "под капотом". Для работы с Obj-C знать Си не нужно, но полезно. Даже так: знание Си не принесет драматического профита в изучении Obj-C.
Кирилл: Да, тут не совсем очевидно. Попробуйте отправить на телефон ussd. Но я вот не могу придумать, что это еще может быть. Покрутите телефон, напишите, если заметите закономерности. Интересно.
Нужно выбрать, как Вы собираетесь идентифицировать пользователя: по почте или нет. Если по почте, то пользователь с одним и тем же email не сможет регистрироваться через разные соцсети. И "перепривязывать" их можно будет из личного кабинета. Если нет - то тут другая проблема - восстановление пароля, ведь несколько пользователей смогут иметь один пароль.
Для идентификации по почте:
1. Зарегистрировались по email->завалидировали email. При регистрации через соцсеть с этим же email выдаем ошибку "пользователь с таким email существует". В кабинете делаем привязку к соцсети.
2. Зарегистрировались через соцсеть->запросили email->[далее по 1 варианту]. Тут можно организовать создание пароля для входа мимо соцсети.
Для идентификации по абстрактному идентификатору:
Все записи разделены и не связаны, несколько пользователей могут иметь один email. Пользователь, зашедший через VK != себе же через FB.
Теперь про хранение. Да, для идентификации пользователя достаточно хранить его ID, НО(!) процессом идентификации обязательно должен управлять backend(сервер). Flow: Из приложения делаем запрос к соцсети (OAuth) с callback на Ваш сервер-> соцсеть авторизует и форвардит запрос с access_token на сервер, тот создает/идентифицирует запись и возвращает JSON(например) с данными пользователя Вашей системы (не соцсети!).
Nistrom: Тут вопрос комплексный. Если данных не много, и нет необходимости реализовывать скроллинг и зум - то просто:
1. Наследуете UIView
2. Создаете хранилище для данных - координат
3. В drawRect: с помощью Core Graphics отрисовываете нужные линии, фон, точки и все-что-угодно
Очень рекомендую Core-plot. Была недавно такая задача, перепробовал тонну контролов, писал свой, но выходило слишком много времени на _качественную_ работу. В результате выбрал Core Plot и не жалею. Он не очень прост, зато - быстр и настраивается очень тонко.
Ан согласен. Из документации: Important
Do not use this synchronous method to request network-based URLs. For network-based URLs, this method can block the current thread for tens of seconds on a slow network, resulting in a poor user experience, and in iOS, may cause your app to be terminated.
смотрите то, что написано после @implementation. в данном случае, self указывает на его экземпляр. у Вас-AppDelegate. он наследован от UIResponder и поддерживает протокол UIApplicationDelegate (смотрите .h файл)
if (p % d == 0)
{
cases = 0;
break;
}
а с 1 делители начинать не стоит, т.к. на 1 делится любое число