Форум программистов, компьютерный форум, киберфорум
Visual Basic .NET
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.94/16: Рейтинг темы: голосов - 16, средняя оценка - 4.94
Форумчанин.NET
550 / 421 / 64
Регистрация: 12.02.2013
Сообщений: 834
1

Задачи для тренировки и лучшего понимания языка

06.01.2014, 13:36. Просмотров 3215. Ответов 13

Предлагаю в этой теме размещать задачи, которые помогут новичкам (и не только) более детально разобраться в основах языка.
При размещении задачи просьба придерживаться единого вида оформления.

Вид оформления задачи:
Название задачи (Вид приложения)
Уровень: Выбрать один из трёх уровней (лёгкий, средний, сложный)

Условие задачи: Наиболее понятно и развернуто изложить условия задачи

Пример работы программы:
Код
'Показать входные данные и результаты работы программы'
Первое число: 10
Второе число: 7

Сумма чисел равна 17


Также обращаю внимание на некоторые моменты:

1. При размещении задачи, убедитесь, что данная задача не была опубликована ранее.
2. Запрещено размещать задачи в виде картинок и других файлов с их текстом.
3. Запрещено публиковать ссылки на сторонние ресурсы.
4. Запрещено размещать задачу и требовать (или даже надеяться) её решения. Все задачи размещаются исключительно для саморазвития участников форума.
6
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
06.01.2014, 13:36
Ответы с готовыми решениями:

Задачи для тренировки и лучшего понимания
Ребят. Кто-нибудь может дать задачу для тренировки? Приблизительно по всему курсу С++. Буду...

Элементарные программы, для лучшего понимания языка...
Здравствуйте. Вот сегодня решил что пора изучать с++. Есть пару задач. Начал решать и уже на первой...

Литература для лучшего понимания сути программирования
Привет! Подскажите литературу, которая поможет разобраться в сути самого процесса программирования,...

Набор задачь для тренировки и улучшения понимания программирования
Добрый вечер всем. Если кто знает модскажите где можно найти подобный набор задачь...

13
Заблокирован
06.01.2014, 13:38 2
Лучший ответ Сообщение было отмечено как решение

Решение

Первые пять заданий AeroWhite:
Номер четверти плоскости с координатами (ConsoleApplication)
Уровень: Лёгкий

Условие: Определить номер четверти плоскости, в которой находится точка с координатами X и Y , причем X и Y отличны от нуля. Координаты вводить с клавиатуры.

Пример работы программы:
Код
Введите координату X: -2
Введите координату Y: 5

Расположение точки: II четверть плоскости
Большая и меньшая цифры числа (ConsoleApplication)
Уровень: Лёгкий

Условие: Организовать ввод двухзначного натурального числа с клавиатуры. Программа должна определить наименьшую и наибольшую цифры, которые входят в состав данного натурального числа.

Пример работы программы:
Код
Введите двухзначное натуральное число: 15

5 - наибольшая цифра
1 - наименьшая цифра
Таблица квадратов чисел (ConsoleApplication)
Уровень: Лёгкий

Условие: Программа должна выводить таблицу квадратов чисел от 1 до 7. В первом столбце должны находиться числа от 1 до 7 во втором столбце — квадраты этих чисел.

Пример работы программы:
Код
Число                            Квадрат числа
---------                        ---------
1                                1
2                                4
3                                9
4                                16
5                                25
6                                36
7                                49
Целое число (ConsoleApplication)
Уровень: Лёгкий

Условие: Программа проверяет, является ли введенное с клавиатуры число — целым числом.

Пример работы программы:
Код
Введите число: 23.5

Введённое число не является целым!
Умножения двух чисел без использования оператора "*" (ConsoleApplication)
Уровень: Лёгкий

Условие: Напишите программу умножения двух чисел любым способом. Условие только одно - нигде не использовать оператор "*".

Пример работы программы:
Код
Введите первое число: 10
Введите второе число: 7

Ответ: 70
3
Форумчанин.NET
550 / 421 / 64
Регистрация: 12.02.2013
Сообщений: 834
06.01.2014, 14:31  [ТС] 3
Лучший ответ Сообщение было отмечено как решение

Решение

Факториал (ConsoleApplication)
Уровень: Лёгкий

Условие: Написать программу, которая вычисляет значение факториала введенного числа.

Пример работы программы:
Код
Введите число: 5

Факториал числа 5 равен 120
Римские числа (ConsoleApplication)
Уровень: Лёгкий

Условие: Число вводится с клавиатуры. Перевести это число в римскую запись и вывести на экран.
Для справки: M = 1000, D = 500, C = 100, L = 50, X = 10, V = 5, I = 1.

Пример работы программы:
Код
Введите число: 219

Римская запись: CCXIX
Перевод числа из двоичной в десятичную СС (ConsoleApplication)
Уровень: Лёгкий

Условие: Число в двоичной системе счисления вводится с клавиатуры. Написать функцию, которая переводит это число в десятичную форму записи.

Пример работы программы:
Код
Введите число в двоичной СС: 1000

ваше число в десятичной СС: 8
Деление числа на разряды (ConsoleApplication)
Уровень: Лёгкий

Условие: Составить программу, которая будет считывать введённое пятизначное число. После чего, каждую цифру этого числа необходимо вывести в новой строке.

Пример работы программы:
Код
Введите число: 10819

1 цифра - 1
2 цифра - 0
3 цифра - 8
4 цифра - 1
5 цифра - 9
4
Модератор
Эксперт .NET
5267 / 4070 / 1174
Регистрация: 12.10.2013
Сообщений: 11,832
Записей в блоге: 2
06.01.2014, 18:22 4
Предлагаю к условию задачки по факториалу добавить: "Не используя рекурсию". По моему, так будет интереснее.
0
286 / 267 / 107
Регистрация: 10.06.2011
Сообщений: 696
06.01.2014, 19:44 5
Непарные скобки(Console Application)
Уровень: лёгкий

Условие: подсчитать количество непарных скобок в выражении

Пример работы программы:
Код
Введи выражение: b)+(а*а)+((c*c)

Количество непарных скобок: 2
1
Форумчанин.NET
550 / 421 / 64
Регистрация: 12.02.2013
Сообщений: 834
06.01.2014, 19:58  [ТС] 6
Увеличение чисел по условию (ConsoleApplication)
Уровень: Лёгкий

Условие: Составить алгоритм увеличения всех трех, введённых с клавиатуры, чисел на 5, если среди них есть хотя бы две равные. В противном случае выдать ответ «равных нет».

Пример работы программы:
Код
Введите первое число: 10
Введите второе число: 9
Введите третье число: 9

Первое число = 15
Второе число = 14
Третье число = 14


Вопрос пользователю (ConsoleApplication)
Уровень: Средний

Условие: Написать программу, которая задает пользователю вопрос (вопрос полагает однозначный ответ, типа да-нет).Дать пользователю несколько подсказок и попыток ответить на вопрос. Если он угадал спросить у него имя, и вывести на экран поздравление, состоящие из нескольких строк, дважды использовав его имя.

Пример работы программы:
Код
Сейчас 2014 год? (да - 1, нет - 0): 0

Подумайте получше:)
Сейчас 2014 год? (да - 1, нет - 0): 1

Вы правильно ответили на вопрос! Введите Ваше имя: Евгений

Евгений, от всей души поздравляем Вас! Всё цветы у Ваших ног, Евгений!
Эта музыка для Вас!
Среднее арифметическое массива (ConsoleApplication)
Уровень: Средний

Условие: Написать функцию, подсчитывающую среднее арифметическое целого массива. Размерность массива и тип его членов можете взять любые.

Пример работы программы:
Код
50 83 54 32 73 22 51 67 28 7

Среднее арифметическое: 46.7
Составное число (ConsoleApplication)
Уровень: Средний

Условие: Определить, является ли введённое число составным.
Для справки: Составное число — число полученное путём произведения двух натуральных чисел, больших единицы. Ряд составных чисел: 4, 6, 8, 9, 10, 12, 14 и т. д.

Пример работы программы:
Код
Введите число: 16
Число 16 - составное число
Обнуления столбца двумерного массива (ConsoleApplication)
Уровень: Средний

Условие: Разработать функцию обнуления столбца в двумерном массиве. Обнулить 3 столбца. Результат вывести на печать. Какие именно столбцы необходимо обнулить — не оговаривается. Массив заполняется случайными числами.

Пример работы программы:
Код
Исходный массив:
44 2 39 81 36 78
55 7 89 55 66 99
11 5 95 66 78 19
15 1 97 56 77 13
89 6 21 35 78 22

Полученный массив:
44 0 39 0 36 0
55 0 89 0 66 0
11 0 95 0 78 0
15 0 97 0 77 0
89 0 21 0 78 0
Самое короткое слово в строке (ConsoleApplication)
Уровень: Средний

Условие: Организовать ввод строки, каждое слово в строке отделяется от других слов пробелами, их может быть неограниченное количество. Найти самое короткое слово в строке.

Пример работы программы:
Код
Введите строку: Форум программистов Visual Basic.NET.
Самое короткое слово: Форум
1
827 / 635 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
09.01.2014, 15:45 7
Идея с темой мне нравится, но всё-таки возникает вопрос, планируется ли какая-то обратная связь от решивших задачи? Например, задача про римские числа очень хорошая, но её можно решить просто и красиво, а можно написать очень много всякой фигни. Т. е. факт решения (даже если оно правильное в плане работоспособности, что тоже не факт) сам по себе не означает получение каких-либо навыков...
0
Форумчанин.NET
550 / 421 / 64
Регистрация: 12.02.2013
Сообщений: 834
09.01.2014, 16:08  [ТС] 8
Лучший ответ Сообщение было отмечено как решение

Решение

Qwertiy, это очень сложный вопрос.
1. Размещение решения (одного из его вариантов) рядом с условием, тоже убьет получение навыков, т.к особо ленивые сразу его посмотрят, а кто-то решив по-другому может засомневаться в правильности своего решения.
2. Если отписываться о своем решении в этой теме, то задачи будут перемешиваться с решениями, что тоже не есть хорошо.
3. Можно создать отдельную тему для решений, НО...с закреплением этой темы не сложилось, так что вполне вероятно, что она потеряется среди остальных, а потом напрочь забудется.

Вот если бы тема развивалась поактивней и была заинтересованность форумчан...
3
827 / 635 / 100
Регистрация: 20.08.2013
Сообщений: 2,524
09.01.2014, 23:29 9
B пара задач

Системы счисления (ConsoleApplication)
Уровень: Лёгкий

Условие: Написать функцию преобразования числа из системы счисления по основанию a в систему счисления по основанию b. Функция должна принимать строковое представление числа в системе счисления по основанию a и обе системы счисления и возвращать строковое представление числа в системе счисления по основанию b.

Ограничения: Число целое. Системы счисления от 2 до 36 включительно.

Пример работы программы:
Код
Введите число: 7zZ
Введите основание: 36
Введите новое основание: 17
Результат: 21EE

Системы счисления 2 (ConsoleApplication)
Уровень: Сложный

Условие: То же, что в предыдущей задаче, но число дробное. Использовать заданный в региональных параметрах разделитель дробной части. Обрабатывать периодические дроби.

Примеры работы программы (в порядке усложнения):
Код
Введите число: 12.5
Введите основание: 8
Введите новое основание: 10
Результат: 10.625

Введите число: 23.1
Введите основание: 6
Введите новое основание: 10
Результат: 15.1(6)

Введите число: 15.1(6)
Введите основание: 10
Введите новое основание: 6
Результат: 23.1

Введите число: 0.0(01)
Введите основание: 2
Введите новое основание: 10
Результат: 0.1(6)


Добавлено через 2 минуты
Уточнение. В первой задаче стоит сделать две функции - перевод в число (Integer) и из числа в строку в заданной системе счисления.
1
Release
10.01.2014, 18:59
  #10
 Комментарий модератора 
Тема почищена. Постим только задания. Обо всем, что интересует пишем автору темы или мне.
0
Заблокирован
12.01.2014, 09:51 11
Вот бесконечное множество задач, в т.ч. для новичков. http://cyberforum.ru/order-program/
Если кто совсем новичок, то можно не писать заказчику, а пытаться выполнить тот или иной заказ самому в свои сроки.

Кто хочет удалять моё сообщение, пусть удаляет, но будет логично объяснить, почему это не задачи или почему их не бесконечное множество (конец света не в счёт).

Я же скажу, что от этих задач куда больше толку, чем от одного лишь кручения массивов и перевода из одной системы счисления в другую, так как это реальные практические задачи, за решение которых платят деньги.

P.S.
Срач разводить не советую - лично я корма не дам, а может и читать даже не буду.
1
Заблокирован
12.01.2014, 10:28 12
Цитата Сообщение от Водяной Змей Посмотреть сообщение
Вот бесконечное множество задач, в т.ч. для новичков. http://cyberforum.ru/order-program/
Для новичков? Абсурд.
0
Форумчанин.NET
550 / 421 / 64
Регистрация: 12.02.2013
Сообщений: 834
12.01.2014, 10:38  [ТС] 13
Цитата Сообщение от Водяной Змей Посмотреть сообщение
Я же скажу, что от этих задач куда больше толку, чем от одного лишь кручения массивов и перевода из одной системы счисления в другую, так как это реальные практические задачи, за решение которых платят деньги.
Точнее сказать, что это практические задачи, лежащие среди кучи хлама и полнейшего отсутствия условий, либо же содержания:
"Пойди туда, не знаю сам куда, сделай мне то, сам не знаю что".

С таким же успехом я могу попросить помощи у Яндекса, Гугла и т.п
0
Заблокирован
12.01.2014, 11:37 14
Release,
срачей я обещал не разводить, но отмечу, что я был новичком, когда начинал фрилансить.
Суммы получал символические - рублей по 100 в день, а то и меньше.
Но, во-первых, 100 рублей лучше чем ничего, а во-вторых, тамошние задания как минимум поразнообразнее, чем кручение массивов на консоли. От клейма "поинтереснее" воздержусь - может кто-то математику и логику любит больше, чем технику, тогда решать головоломки с массивами ему может и интереснее.

AeroWhite,
среди кучи хлама и полнейшего отсутствия условий
Ну если массивы крутить, то да. А что серьёзно, типа ботов, плееров или что-нибудь связанное с офисными документами, так условия - будут, и порой даже неплохие.
я могу попросить помощи у Яндекса, Гугла и т.п
А мне и одного гугла хватает. О чём я уже не раз писал в некоторых темах на разных форумах.
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.01.2014, 11:37

Заказываю контрольные, курсовые, дипломные и любые другие студенческие работы здесь.

Проверить на правильность и закомментировать весь код для лучшего понимания
Всем здравствуйте. Условие задачи - Заданная матрица целых чисел размером (N, N). Найти среднее...

Что необходимо знать из языка C# для полноценного понимания паттерна MVVM?
Доброго времени суток, уважаемые форумчане! За последнее время стал очень часто натыкаться на...

Нужны задачи для тренировки
Здравствуйте киньте пожалуйста задания по с++ для человека начинающего изучать Turbo с++

Нужны задачи для тренировки
Вот не давно был школьный этап по программирование в школе(олимпиады). Меня закинули на городскую,...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
14
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.