Написать консольное приложения для анкетирования
При загрузке приложения выводится стартовое сообщение: “Выберите действие:”, нужно ввести команду для продолжения дальнейшей работы.
Список доступных команд:
cmd: -new_profile - Заполнить новую анкету
cmd: -statistics - Показать статистику всех заполненных анкет
cmd: -save - Сохранить заполненную анкету
cmd: -goto_question <Номер вопроса> - Вернуться к указанному вопросу (Команда доступна только при заполнении анкеты, вводится вместо ответа на любой вопрос)
cmd: -goto_prev_question - Вернуться к предыдущему вопросу (Команда доступна только при заполнении анкеты, вводится вместо ответа на любой вопрос)
cmd: -restart_profile - Заполнить анкету заново (Команда доступна только при заполнении анкеты, вводится вместо ответа на любой вопрос)
cmd: -find <Имя файла анкеты> - Найти анкету и показать данные анкеты в консоль
cmd: -delete <Имя файла анкеты> - Удалить указанную анкету
cmd: -list - Показать список названий файлов всех сохранённых анкет
cmd: -list_today - Показать список названий файлов всех сохранённых анкет, созданных сегодня
cmd: -zip <Имя файла анкеты> <Путь для сохранения архива> - Запаковать указанную анкету в архив и сохранить архив по указанному пути
cmd: -help - Показать список доступных команд с описанием
cmd: -exit - Выйти из приложения
Заполнить новую анкету
В анкете 5 вопросов:
ФИО
Дата рождения (Формат ДД.ММ.ГГГГ)
Любимый язык программирования (Можно ввести только указанные варианты, иначе ошибка: PHP, JavaScript, C, C++, Java, C#, Python, Ruby)
Опыт программирования на указанном языке (Полных лет)
Мобильный телефон
Вопросы должны идти по очереди, после того как пользователь ввёл ответ, выводить следующий вопрос или ошибку.
Все вопросы обязательны для заполнения.
После заполнения всех вопросов, выводится сообщение: “Выберите действие:”, нужно ввести команду для продолжения дальнейшей работы.
Сохранить заполненную анкету
Анкета должна сохраняться в текстовом файле (txt) с именем, которое пользователь указал в ФИО, в каталоге с названием "Анкеты", который должен находится в каталоге приложения.
Структура текстового файла анкеты:Показать статистику всех заполненных анкет1. ФИО: <ФИО>
2. Дата рождения: <Дата рождения>
3. Любимый язык программирования: <Любимый язык программирования>
4. Опыт программирования на указанном языке: <Опыт программирования на указанном языке>
5. Мобильный телефон: <Мобильный телефон>
Анкета заполнена: <Дата заполнения анкеты>
Нужно вывести в консоль следующие данные:
Средний возраст всех опрошенных: <Посчитать средний возраст всех тех, кто заполнял анкеты, целое число> (год, года, лет в зависимости от полученного числа, т.е если средний возраст получился 22, то вывести 22 года, если 25, то 25 лет итд)
Самый популярный язык программирования: <Название языка программирования, который большинство пользователей указали как любимый>
Самый опытный программист: <ФИО человека, у которого указан самый большой опыт работы>
Тестовое задание выполнить на языке C#, отправить исходный код и скомпилированное приложение.
Вопросы для собеседования.
Re: Вопросы для собеседования.
Киберпанк не умер. Он просто наступил.
Re: Вопросы для собеседования.
В следующем коде изменить ОДИН знак так, чтобы напечаталось 20 звездочек:
Код: Выделить всё
void Main()
{
int n = 20;
for ( int i = 0; i < n; i-- )
{
Console.WriteLine(" *");
}
}
Киберпанк не умер. Он просто наступил.
Re: Вопросы для собеседования.
Разработать ASP.Net MVC/WPF/Win Forms приложение с одной страницей, которая имеет textbox для сообщения и кнопку.
- По нажатию на кнопку происходит отправка и запоминание сообщения на сервере (хранение сообщений должно работать автономно, без использования сервера баз данных).
- Реализовать возможность просмотра сообщений текущего пользователя и всех пользователей системы.
- Страницу вывода всех сообщений пользователей сделать с сортировкой сообщений пользователей по ID или по времени.
- На сервере запоминается 10 последних сообщений (по умолчанию) для каждого юзера и 20 последних сообщений (по умолчанию) для всех юзеров. Каждому пользователю должен быть присвоен ID – либо автоматически либо вручную.
Киберпанк не умер. Он просто наступил.
Re: Вопросы для собеседования.
Забавное было интервью. За два дня до скинули письмо, где написали -
Вопросы на техническом собеседовании будут по следующим вещам. Пробегитесь пожалуйста.
- Статический конструктор
- Ref и out
- Boxing/unboxing
- Gethashcode
- List и linkedlist
- Partial
- Structlayout и fieldoffset для структур
- Switch case
- Yield
- Анонимные типы
- Делегаты
- Замыкания в цикле for
- Замыкания в цикле foreach
- Значимые и ссылочные типы данных
- Именованные и необязательные аргументы
- Инициализация примитивных типов
- Интернирование строк
- Исключения
- Ковариация и контравариация (.net 4.0+)
- Коллекции для поиска
- Конструктор значимых типов
- Конструкция using
- Копирование массива
- Примитивы синхронизации
- Метод equals
- Методы расширения
- Модификаторы доступа
- Наследование
- Настраиваемые атрибуты
- Обобщения
- Ограничения в обобщениях
- Перегрузка операторов
- Перечисления
- Приведение типов
- Реализация интерфейса
- Свойства и индексаторы
- События
- События и утечки памяти
- Статические члены в обобщениях
- Строки
- Условная компиляция
- Финализация
- Флаги и типы данных
- Цикл foreach
- Циклы
Киберпанк не умер. Он просто наступил.
Re: Вопросы для собеседования.
есть у тебя коллекция - модель надо вывести ее разбив на группы в ItemsControl в заголовке групп вывести поле по которому сгруппированно и количество элементов в группе
напиши как будешь делать группировку и как выводить количество элементов группы
Киберпанк не умер. Он просто наступил.
Re: Вопросы для собеседования.
Убрать пробел тут?arxont писал(а):В следующем коде изменить ОДИН знак так, чтобы напечаталось 20 звездочек:
Код: Выделить всё
void Main() { int n = 20; for ( int i = 0; i < n; i-- ) { Console.WriteLine(" *"); } }
Код: Выделить всё
Console.WriteLine("*");
Re: Вопросы для собеседования.
Неаlis писал(а):Убрать пробел тут?Код: Выделить всё
Console.WriteLine("*");

Киберпанк не умер. Он просто наступил.
Re: Вопросы для собеседования.
Кстати, а сколько раз выполнится цикл for (int i = 0; i < n; i--) ? 

R2D2 это не робот, а цепь из схем журнала "Радио" 

Re: Вопросы для собеседования.
А кто сказал, что сейчас программа работает корректно? Там и есть условие - поменять один символ )hjv писал(а):Кстати, а сколько раз выполнится цикл for (int i = 0; i < n; i--) ?
Киберпанк не умер. Он просто наступил.
Re: Вопросы для собеседования.
Т.е. как минимум одна ошибка найдена 

R2D2 это не робот, а цепь из схем журнала "Радио" 
