Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.61/215: Рейтинг темы: голосов - 215, средняя оценка - 4.61
0 / 0 / 0
Регистрация: 07.04.2009
Сообщений: 7

Интересные задачи для новичков.

21.04.2009, 21:19. Показов 40349. Ответов 43
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Подскажите,пожалуйсто,где можно найти список интересных или олимпиадных(школьных) задач.
Заранее благодарен.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
21.04.2009, 21:19
Ответы с готовыми решениями:

Задачи для новичков
Посоветуйте сайт или пособие,где находятся задачи по С++ и есть решения к ним.

Разъяснение алгоритмов задачи о рюкзаке для новичков
Есть несколько алгоритмов решения задачи о рюкзаке. Не могли бы вы написать комментарии к ним объясняющие какая процедура для чего нужна?...

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

43
Maniac
Эксперт С++
 Аватар для ISergey
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
21.04.2009, 21:24
Чем тебе этот раздел не список задач.(Валом)
0
Заблокирован
21.04.2009, 21:36
для школьников, например, найти сумму ряда 1/(x*x) , x=1..100000000 точность до 14 цифр в дробной части. ответ 1.64472532272339 недостаточно точный, более точен 1.6449.. остальные цифры не пишу
0
Maniac
Эксперт С++
 Аватар для ISergey
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
21.04.2009, 21:58
Лучший ответ Сообщение было отмечено как решение

Решение

тест на знание С++
C++
1
2
3
int a = 0;
int b = 1;
int c = a+b; /* результат == 1  */
Постановка задачи: убрать с кода знаки "=". (Желательно, что бы оно ещё потом компилилось ).

Добавлено через 2 минуты 44 секунды
2.Вот: зачем нужно перегружать стандартный оператор присваивания и конструктор копирования, при динамическом распределении памяти в классе?

Добавлено через 12 минут 24 секунды
И 3. при каком условии эта
C++
1
2
3
bool x_func(int x){
    return ((x != 0) && (x == -x)); 
}
функция вернет не "0". (кто знает не спешите отвечать)
3
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
21.04.2009, 22:05
> Постановка задачи: убрать с кода знаки "=". (Желательно, что бы оно ещё потом компилилось ).

А цель задачи какая? А то постановку задачи не особо понял

-------------------

Задача. Написать программу, которая будучи скомпилированной компилятором Си выдаст один результат (например, напечатает "Это Си"), а будучи скомпилированная компилятором Си++ выдаст другой результат (например, напечатает "Это Си++"). Условной компиляцией пользоваться нельзя. Т.е. тест на знание различного поведения одних и тех же конструкций на Си и Си++
0
 Аватар для Humanitis
176 / 168 / 27
Регистрация: 12.01.2009
Сообщений: 430
21.04.2009, 22:06
https://www.cyberforum.ru/cpp/thread30970.html
автор этой темы постоянно где-то вытаскивает подобные задачи
1
Maniac
Эксперт С++
 Аватар для ISergey
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
21.04.2009, 22:21
Цитата Сообщение от Evg Посмотреть сообщение
А цель задачи какая? А то постановку задачи не особо понял
Имел в виду что этот
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
int main()
{
    int a = 0;
    int b = 1;
    int c = a + b;
    cout<<c<<endl;
    return 0;
}
код нужно модифицировать так чтобы в нем не было знака "=", но результат остался не изменим.)
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
21.04.2009, 22:33
ISergey, мне 3 понравилась) 1 и 2, на мой взгляд, не представляют никакой сложности.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
21.04.2009, 22:36
Цитата Сообщение от ISergey Посмотреть сообщение
код нужно модифицировать так чтобы в нем не было знака "=", но результат остался не изменим.)
Наверное я тупею, но всё равно не понял... Подозреваю, что "cout << 1 << endl;" - ответ неправильный, но не пойму, чем он противоречит условию
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
21.04.2009, 22:41
Evg, тем что, тебе не надо изменять код..а лишь модифицировать.. a,b,c должны остатся.
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
21.04.2009, 22:45
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
ISergey, мне 3 понравилась) 1 и 2, на мой взгляд, не представляют никакой сложности.
3-я задача всё-тки читерская. В стандарте есть понятие "unspecified" - это когда стандарт чётко не оговаривает какие-то вещи и оставляет это на усмотрение компилятора. Т.е. за такую характеристику отвечает компилятор, а не стандарт, и компилятор выставляет это в своей документации. К таким характеристикам относятся, например, количетсво битов в байте, а также формат представления чисел

Ну так вот, данная задача имеет решение только в том случае, если используется двоичное представление целых знаковых чисел в дополнительном коде (что соотвествует "обычному" понятию, когда 0xfffff... это -1). Однако на некоторых сигнальных процессорах используется другие форматы представления целых чисел (не помню, как оно правильно называется). В этом формате отрицательное число получается из положительного взведением единицы в старший разряд (т.е. 0x80....01 это -1, 0x80....02 это -2)

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

Добавлено через 1 минуту 36 секунд
Цитата Сообщение от Monte-Cristo Посмотреть сообщение
Evg, тем что, тебе не надо изменять код..а лишь модифицировать.. a,b,c должны остатся.
Тогда я наверное не понимаю слова "модифицировать". Замена "c=a+b" на "c=1" опять-таки это не правильное решение, только вот объясните почему? Я просто пытаюсь в условие вникнуть
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
21.04.2009, 23:11
Цитата Сообщение от Evg Посмотреть сообщение
Тогда я наверное не понимаю слова "модифицировать". Замена "c=a+b" на "c=1" опять-таки это не правильное решение, только вот объясните почему? Я просто пытаюсь в условие вникнуть
нет, у тебя должны остатся эти переменные... но не должно быть знака равно...

p.s: скажу лишь, что я знаю два разных решения.
0
Maniac
Эксперт С++
 Аватар для ISergey
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
21.04.2009, 23:51
Evg, Забыл сказать в Си такого не сделать(только С++)
PS я по поводу 1 задачи.
0
 Аватар для Monte-Cristo
2816 / 1408 / 107
Регистрация: 07.03.2009
Сообщений: 4,446
22.04.2009, 00:08
ISergey, ну не скажите... один из вариантов, ну это не тот, который вы подразумевали, компилируется и в си. я его потом придумал) ну он может не совсем тот)
0
Maniac
Эксперт С++
 Аватар для ISergey
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
22.04.2009, 00:11
А решение уж больно простое
C++
1
2
3
4
5
6
7
8
9
10
#include <iostream>
using namespace std;
int main()
{
    int a(0);
    int b(1);
    int c(a + b);
    cout<<c<<endl;
    return 0;
}
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
22.04.2009, 17:14
Хорошо, по поводу первой задачи киньте ответ в личку. Может хоть глядя на ответ я пойму, а в чём задача-то состояла

Добавлено через 1 минуту 21 секунду
Цитата Сообщение от ISergey Посмотреть сообщение
А решение уж больно простое
Понятно... Я не берусь чётко сформулировать постановку задачи, но задача, на мой взгляд, неинтересная

Добавлено через 17 часов 1 минуту 14 секунд
Задача

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

C++
1
2
3
4
5
6
main()
{
       int i, N=20;
       for(i = 0 ; i < N ; i--)
               printf("*");
}
Мы в своё время нашли 3 способа. И ещё один, чтобы 21 звёздочка была
2
Maniac
Эксперт С++
 Аватар для ISergey
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
22.04.2009, 17:23
А здесь for(i = 0 ; i < N ; i--) точно i--
0
 Аватар для EnzoMatrix
121 / 121 / 14
Регистрация: 14.03.2009
Сообщений: 462
22.04.2009, 17:31
Цитата Сообщение от ISergey Посмотреть сообщение
А здесь for(i = 0 ; i < N ; i--) точно i--
по идее правильно все должно быть
трех способов не нашел, но один знаю
1
Maniac
Эксперт С++
 Аватар для ISergey
1464 / 965 / 160
Регистрация: 02.01.2009
Сообщений: 2,820
Записей в блоге: 1
22.04.2009, 17:43
CartmanRules, Ух ты быстрый.(О уже удалил)

Добавлено через 8 минут 43 секунды
А второй нашел
0
 Аватар для Humanitis
176 / 168 / 27
Регистрация: 12.01.2009
Сообщений: 430
22.04.2009, 18:03
Ну если вместо пробела можно символ поставить,тогда три способа нашел
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
22.04.2009, 18:03
Помогаю со студенческими работами здесь

Нужны интересные задачи для новичков
Учу C#. Пока пишу в консоли, решаю кое-какие задачки. Но фантазия, видимо, скудная у меня. Хотелось бы, чтоб тут кто-то предложил сейчас...

Задачи для новичков
Дана матрица А с 2 строками и 10 столбцами. 1й элемент каждого столбца представляет собой объем одной из 10 деталей узла машины,а 2-й...

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

Задачи для новичков
ВСем привет. У меня просьба. Вот сел я изучать шарп. Выучил базовые выражения, управляющие операторы. Хотелось бы в закрепление материалы...

Задачи для новичков
Создайте скрипт, который будет при клике на кнопку “ОК”, выводить указанное в поле ввода число смайликов на страницу.


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru