Форум программистов, компьютерный форум, киберфорум
C++
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск  
 
 
Рейтинг 4.54/2345: Рейтинг темы: голосов - 2345, средняя оценка - 4.54
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562

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

15.07.2010, 05:53. Показов 515728. Ответов 1272
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Ребят. Кто-нибудь может дать задачу для тренировки? Приблизительно по всему курсу С++. Буду благодарен за сложную задачу, но которую способен сделать новичок-любитель. Затраты сил-времени не важно. Главное, чтобы это было интересно и не слишком рутинно. + Если найдется человек который даст задачу просьба помогать с кодом, который я буду себя скидывать. Не переписывать за меня, но указывать на ошибки и желательно объяснять. Заранее спасибо.

Список задач, решение которых присутствует в данной теме:
44
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
15.07.2010, 05:53
Ответы с готовыми решениями:

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

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

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

1272
Мат в 32 хода
 Аватар для nikkka
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
04.08.2010, 11:08
Студворк — интернет-сервис помощи студентам
Nameless One, а я могу к примеру обявить в переменную int k=0 а в конце main-a прописать return k?
а что будет если я вообще ничего не напишу?
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
04.08.2010, 11:10
Цитата Сообщение от nikkka Посмотреть сообщение
Nameless One, а я могу к примеру обявить в переменную int k=0 а в конце main-a прописать return k?
Можешь

Цитата Сообщение от nikkka Посмотреть сообщение
а что будет если я вообще ничего не напишу?
Компилятор должен сам вставить return 0;
Но так делать не принято.
1
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.08.2010, 11:43
Цитата Сообщение от Nameless One Посмотреть сообщение
Компилятор должен сам вставить return 0;
Не факт. Некоторый компиляторы ничего делать не будут.

По поводу некорректного примера. На sun'овском компиляторе для sparc так и происходит:

Code
1
2
3
4
$ cc t.c && ./a.out
7
$ cc t.c -xO4 && ./a.out
5
Фрагмент ассемблерного файла в режиме без оптимизаций:

Code
1
2
3
4
5
6
7
8
9
!   13    *ptr = 7;
 
        mov     7,%o1
        st      %o1,[%o0+0] <---- запись по указателю (переменная ptr находится в регистре %o0)
 
!   14    return b;
 
        sethi   %hi(b),%o0
        ld      [%o0+%lo(b)],%i5 <---- чтение "b"
Фрагмент ассемблерного файла в режиме с оптимизациями:

Code
1
2
3
4
5
6
7
8
9
/* 000000         13 */         sethi   %hi(a),%o5
/* 0x0004         14 */         sethi   %hi(b),%o4
/* 0x0008          9 */         or      %g0,%o0,%o3
/* 0x000c         14 */         ld      [%o4+%lo(b)],%o0  <---- чтение b
/* 0x0010         13 */         add     %o5,%lo(a),%o2
/* 0x0014            */         sll     %o3,2,%o1
/* 0x0018            */         or      %g0,7,%o5
/* 0x001c         14 */         retl    ! Result =  %o0
/* 0x0020         13 */         st      %o5,[%o1+%o2] <---- запись по указателю (в регистре %o2 записан адрес "a")
3
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
04.08.2010, 11:47
Цитата Сообщение от Evg Посмотреть сообщение
Некоторый компиляторы ничего делать не будут
То бишь программа не скомпилится?
0
Evg
Эксперт CАвтор FAQ
 Аватар для Evg
21281 / 8305 / 637
Регистрация: 30.03.2009
Сообщений: 22,660
Записей в блоге: 30
04.08.2010, 12:01
Цитата Сообщение от Nameless One Посмотреть сообщение
То бишь программа не скомпилится?
Скомпилится, просто возвращаемое значение не будет записано. Грубо говоря, будет мусор в коде возврата. Для "обычной" программы это по большому счёту пофигу. Это важно там, где в точке запуска твоей программы проверяется код возврата
2
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.08.2010, 14:31
ну я правда хз какие задачки еще привести.. ничего интересного на ум не приходит..
может задачки без гениальной задачки, а на качество реализации?

Добавлено через 55 секунд
думаю было бы неплохо создать отдельную тему, где бы обсуждались различные реализации каждого алгоритма.
2
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
04.08.2010, 14:37
Цитата Сообщение от niXman Посмотреть сообщение
думаю было бы неплохо создать отдельную тему, где бы обсуждались различные реализации каждого алгоритма.
поддерживаю, было бы очень интересно
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
04.08.2010, 14:37  [ТС]
niXman, Можно конечно и на качество реализации.

На тему отдельной темы поддерживаю абсолютно
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.08.2010, 14:40
задачка на владение приоритетами операторов в с++.

C++
1
2
3
4
5
6
7
#include <iostream>
int main()
{
   int i;
   i = 1, 2, 3, 4, 5;
   std::cout << i << std::endl;
}
что будет выведено на консоль?
проверять без компилятора!
0
Мат в 32 хода
 Аватар для nikkka
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
04.08.2010, 14:43
niXman, отличная идея!
предлогаю: выбрать какую ни будь программу, на пример на обмена значений двух переменных, и написать найболее эфективный код. под найболее эфективным кодом я имею ввиду самый мальенкий по размеру исполяемый exe-шник. обязательное оформление:
Code
1
2
3
4
5
6
Enter a: 5
Enter b: 8
After swapping:
a=8
b=5
Press any key to continue...
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
04.08.2010, 14:43  [ТС]
Думаю так
...
Пять
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
04.08.2010, 14:44
Цитата Сообщение от niXman Посмотреть сообщение
задачка на владение приоритетами операторов в с++.
Последний элемент?
0
Мат в 32 хода
 Аватар для nikkka
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
04.08.2010, 14:44
Цитата Сообщение от niXman Посмотреть сообщение
что будет выведено на консоль?
может быть 5?
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.08.2010, 14:45
Lavroff,
Nameless One,
nikkka,
тьфу, тьфу, тьфу...
потому что приоритет оператора присваивания выше приоритета оператора запятая.

сам ответил почему, но не посмотрел в код..извиняюсь.
0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
04.08.2010, 14:46
думаю 1, потому что присваивания с остальными значениями нет. это просто цифры и они не имеют эффекта
1
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
04.08.2010, 14:46  [ТС]
operator comma(,), если в правой части оператора присваивания, то его результатом будет результат выражения, стоящего последним в списке.
0
Мат в 32 хода
 Аватар для nikkka
237 / 172 / 18
Регистрация: 10.09.2009
Сообщений: 1,096
04.08.2010, 14:46
Lavroff,
niXman,
Nameless One,
как на счёт поста #531?
0
В астрале
Эксперт С++
 Аватар для ForEveR
8049 / 4806 / 655
Регистрация: 24.06.2010
Сообщений: 10,562
04.08.2010, 14:48  [ТС]
nikkka, std::swap. Или с доп переменной. Или побитово. Или с арифм операциями.
0
Эксперт С++
 Аватар для fasked
5045 / 2624 / 241
Регистрация: 07.10.2009
Сообщений: 4,310
Записей в блоге: 5
04.08.2010, 14:48
Цитата Сообщение от nikkka Посмотреть сообщение
как на счёт поста #531?
скучно, надо более большие алгоритмы брать. а в твоем предложении все слишком много зависит от компилятора и его опций.
0
Эксперт С++
 Аватар для niXman
3211 / 1459 / 74
Регистрация: 09.08.2009
Сообщений: 3,441
Записей в блоге: 2
04.08.2010, 14:48
извиняюсь, поправил. ступил.
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
04.08.2010, 14:48

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

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

Нужны задачи для тренировки
Киньте задачки на классы......а то в самоучителе, по которому я учу Сишку....приведены задачки, касающиеся только математики.....сами...

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

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


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

Или воспользуйтесь поиском по форуму:
520
Закрытая тема Создать тему
Новые блоги и статьи
Был праздник вчера, а я и не знал.
kumehtar 28.07.2026
27. 07. 2026г. Intel Core 2 Duo исполнилось 20 лет Новости компьютерного мира и их обсуждение (4) Салют, шампанское, овации! :drink:
Нейтральные знания, чистый код - бла-бла-бла-бла, на самом деле кликбейт и самореклама, плагиат, и вот почему
Hrethgir 27.07.2026
То-есть отклонение такой публикации говорит само за себя, и пусть только возьмут на вооружение после отклонения публикации - это будет чистейшим актом плагиата. Отклонял Хабр. Дословно, отклонённая. . .
тв 16 бой ии
anaschu 27.07.2026
Великий Перелом ИИ: Как уравнения ОДУ Radau дожали цензурные фильтры Алисы Фиксируем в мемофонде Теории Всего беспрецедентный факт в истории ИИ-зондирования. В затяжном многораундовом. . .
мв 15. непроверенное, возможно, глюк
anaschu 27.07.2026
НАУЧНО-АНАЛИТИЧЕСКИЙ ОТЧЕТ. РАЗДЕЛ 1. 1: «НАУКА» (РАСШИРЕННАЯ СТЕХИОМЕТРИЧЕСКАЯ И ГЕНЕТИЧЕСКАЯ ВЕРСИЯ)Тема: Теоретическое обоснование инвариантности 19-мерного тензорного ядра непрерывных ОДУ и. . .
Очистка реквизитов и табличных частей документа при копировании (вариант 2)
Maks 26.07.2026
Алгоритм из решения ниже разработан на примере нетипового документа "ЗаявкаНаРаботу", разработанного в КА2. Задача: Заменить алгоритм запрета копирования документов для сотрудников с ролью "Стажер",. . .
Доктрина интенционального знания - Доктрина для портала "Срез".
Hrethgir 25.07.2026
Может найдётся кто захочет оценить доктрину. . . Написания правил участия для меня роскошь, требующая лимита времени, поэтому все сообщения не прошедшие модерацию будут видны только участникам портала,. . .
сукцессия 44. Решил подать на припринт в межународные сервисы препринтов. Но нужно одобрение от ученых
anaschu 25.07.2026
Английский вариант. Пока кто то не одобрит мою личность, мне не получиться это опубликовать на препринте. Но заявку на публикацию статьи я сегодня подам.
сукцессия 43. Вторая научная статья за месяц- прайминг и гатгил
anaschu 25.07.2026
две стороны одной монеты
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru