Форум программистов, компьютерный форум CyberForum.ru

С++ для начинающих

Войти
Регистрация
Восстановить пароль
 
 
Рейтинг: Рейтинг темы: голосов - 9, средняя оценка - 4.67
Sinkha
3 / 3 / 1
Регистрация: 04.07.2015
Сообщений: 187
Завершенные тесты: 1
#1

Нужны задачи для новичка или способ реализации кода - C++

04.07.2015, 20:15. Просмотров 1226. Ответов 37
Метки нет (Все метки)

Дайте мне какую-нить задачу, которая будет больше на логическое мышление и решения логические должны быть, нежели на большое знание языка СИ++. В интернете я нашел задачи, но они либо крайне простые, либо крайне тяжелые. Для меня программирование это интересное занятие. Недавно написал алгоритм создания игры сапер. Он заполняет массив начала "минами" цифрами 9, потом этот же массив заполняет числами как в оригинальном сапере. Если есть такая какая технология чтобы можно было написать программу чтобы она могла общаться с оригинальным сапером из виндовс, я мог бы попробовать написать программу - бота, который смог бы его решать. В общем если коротко, то киньте задачку на логику. Ну и если можно, то скажите как заставить общаться 2ум разным программам между собой
Лучшие ответы (1)
Similar
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
04.07.2015, 20:15
Здравствуйте! Я подобрал для вас темы с ответами на вопрос Нужны задачи для новичка или способ реализации кода (C++):

Подскажите где ошибка, или может есть другой вариант реализации кода - C++
// Упорядочить статический массив(заполненый случайными числами), чтобы в нём чередовались чётные и нечётные элементы, разницу записываем в...

Отделение интерфейса от реализации класса: компиляция кода реализации - C++
Доброго времени суток, У меня возникла проблема с отделением интерфейса от реализации класса. Допустим, у меня есть три файла: 1....

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

Нужны задачи для их решения - C++
Здравствуйте. Нужны задачи для закрепления изученного материала. Что интересует(с чем я могу работать(база)): "напечатать", ...

Нужны задачи для решения - C++
Здравствуйте. Если здесь есть студенты-программисты, то очень попрошу их сбросить сюда задания по С++, потому что все свои уже перерешал.

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

Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
_Valera_
486 / 368 / 94
Регистрация: 27.01.2015
Сообщений: 1,588
04.07.2015, 21:38 #2
Цитата Сообщение от Sinkha Посмотреть сообщение
Ну и если можно, то скажите как заставить общаться 2ум разным программам между собой
Отдельный вопрос, для другого раздела форума


Цитата Сообщение от Sinkha Посмотреть сообщение
В общем если коротко, то киньте задачку на логику.
А теорию алгоритмов и дискретную математику вы уже рассмотрели?


Цитата Сообщение от Sinkha Посмотреть сообщение
либо крайне простые, либо крайне тяжелые.
Одни крайности )


Ладно, моя задача такая:

В программе реализовать 3 функции:

1. Ввод сообщения (Последовательность латинских букв).

2. Ввод пароля. Где пароль сочетание любой длины из чисел(1-9) и латинского алфавита (как больших так и малых букв).

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

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

Подсказка: время работы такой программы может быть огромным, так что если не хотите что б она закончила свою работу через пару лет, то начните только с чисел.
Ouroboros-SK
60 / 60 / 21
Регистрация: 08.09.2013
Сообщений: 187
Записей в блоге: 1
05.07.2015, 03:04 #3
Не знаю, можно ли оставлять на форуме ссылки на внешние ресы, но есть такая штука на логику, как спортивное программирование. Лучший из них, наверно, codeforces.
Sinkha
3 / 3 / 1
Регистрация: 04.07.2015
Сообщений: 187
Завершенные тесты: 1
05.07.2015, 15:11  [ТС] #4
Спасибо, попробую порешать. ПРавда некоторые приемы нужно будет погуглить. Как я понял нужно написать брутфорс мини)
Sinkha
3 / 3 / 1
Регистрация: 04.07.2015
Сообщений: 187
Завершенные тесты: 1
06.07.2015, 22:03  [ТС] #5
Написал код для подбора пароля из цифр. Он простой оказался очень, а вот с символами проблемки) Как я понял нужно через аск 2 подбирать значения для пароля.
Даценд
Модератор
Эксперт .NET
3284 / 3199 / 1632
Регистрация: 20.04.2015
Сообщений: 5,875
06.07.2015, 22:11 #6
Sinkha,
вот еще задания на логику
1. Даны обозначения двух полей шахматной доски (например, A5 и C2).
Найти минимальное число ходов, которые нужны шахматному коню для перехода с первого поля на второе.
2. Имеется N камней веса А1, А2,..., АN.
Необходимо разбить их на две кучи таким образом, чтобы веса куч отличались не более чем в 2 раза. Если этого сделать нельзя, то указать это.
3. Дан массив целых чисел x[1]..x[m+n], рассматриваемый как соединение двух его отрезков:
- начала x[1]..x[m] длины m
- конца x[m+1]..x[m+n] длины n.
Не используя дополнительных массивов, переставить начало и конец.
EugeneQ
1 / 1 / 0
Регистрация: 20.06.2014
Сообщений: 47
06.07.2015, 22:23 #7
Можно ещё реализовать класические игры.
IrineK
Заблокирован
06.07.2015, 22:28 #8
Сообщение было отмечено автором темы, экспертом или модератором как ответ
Архив задач
a c m p .ru/?main=tasks (без пробелов)
Sinkha
3 / 3 / 1
Регистрация: 04.07.2015
Сообщений: 187
Завершенные тесты: 1
07.07.2015, 15:32  [ТС] #9
Цитата Сообщение от EugeneQ Посмотреть сообщение
Можно ещё реализовать класические игры.
Привет. Я давно ещё писал игру "Змейка", но то было ещё на бейсике. Можно как нить подумать об этом, но я хочу пока закончить с данной задачкой
Цитата Сообщение от Даценд Посмотреть сообщение
вот еще задания на логику
1. Даны обозначения двух полей шахматной доски (например, A5 и C2).
Найти минимальное число ходов, которые нужны шахматному коню для перехода с первого поля на второе.
2. Имеется N камней веса А1, А2,..., АN.
Необходимо разбить их на две кучи таким образом, чтобы веса куч отличались не более чем в 2 раза. Если этого сделать нельзя, то указать это.
3. Дан массив целых чисел x[1]..x[m+n], рассматриваемый как соединение двух его отрезков:
- начала x[1]..x[m] длины m
- конца x[m+1]..x[m+n] длины n.
Не используя дополнительных массивов, переставить начало и конец.
Тоже интересная задачка, но я закончу с первой, а потом к твоей перейду
ampermetr
22 / 22 / 8
Регистрация: 01.05.2015
Сообщений: 173
07.07.2015, 15:56 #10
Еще можно нагуглить сборник пасьянсов и реализовать их алгоритмы.
Raali
623 / 327 / 34
Регистрация: 06.07.2013
Сообщений: 1,056
Завершенные тесты: 1
08.07.2015, 16:29 #11
Реализуй в консоли полноценный 3д ASCII куб, крутящийся ( Достаточно интересно выглядит )
Excalibur921
601 / 333 / 49
Регистрация: 12.10.2013
Сообщений: 2,344
08.07.2015, 16:35 #12
Цитата Сообщение от Sinkha Посмотреть сообщение
и решения логические должны быть,
Погуглить “логические игры” и написать для них код игры либо бота?
Sinkha
3 / 3 / 1
Регистрация: 04.07.2015
Сообщений: 187
Завершенные тесты: 1
09.07.2015, 16:19  [ТС] #13
Цитата Сообщение от _Valera_ Посмотреть сообщение
В программе реализовать 3 функции:
1. Ввод сообщения (Последовательность латинских букв).
2. Ввод пароля. Где пароль сочетание любой длины из чисел(1-9) и латинского алфавита (как больших так и малых букв).
3. Подбор пароля. В случае успеха вывести сообщение из функции 1.(то есть пишите алгоритм который формирует строку, а потом сравниваете с паролем, подошел - выводите сообщение, нет - продолжайте искать).
Прошу проверить
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
#include <iostream>
#include <clocale>
#include <string.h>
//ГЂГ*ãëèéñêèé Г*ëôГ*ГўГЁГІ Г± A = 97 ГЁ Z = 122 0 = 48 9 = 57
int main(){
    
    char stroka[9], podbor[9];
 
    int a = 47, i, step;
    
    setlocale(LC_ALL, "Russian");
    
    printf("Ââåäèòå ГЇГ*ðîëü äëÿ ïîäáîðГ* \n");
    
    fgets(stroka,9,stdin);
 
    for( i = 0; i <= strlen(stroka) ; i++){
    
        while(char(a) != stroka[i]){
    
        a++;
        
        }
 
        podbor[i] = char(a);    
 
    }
        
    std::cout<<podbor;
 
}
Добавлено через 2 минуты
Почему вместо рус букв загогулины?) Там в принципе нет ничего такого важного. Под аннотацией для себя писал коды букв английского алфавита аск2 и цифр. А в 13 строке просто "Введите пароль"

Добавлено через 6 минут
Возможно я не правильно понял условия задачи, ведь подбор идет моментально
_Valera_
486 / 368 / 94
Регистрация: 27.01.2015
Сообщений: 1,588
09.07.2015, 17:08 #14
Цитата Сообщение от Sinkha Посмотреть сообщение
while(char(a) != stroka[i]){
неа, так то конечно быстро.

Во-первых: длина вводимого пароля не известна
Цитата Сообщение от Sinkha Посмотреть сообщение
char stroka[9]
во-вторых:
Вы формируете строку(алгоритм который нужно придумать) а потом высылаете эту строку в функцию, где сравниваете весь массив(строку) а не отдельные элементы.

Добавлено через 2 минуты
Ну и конечно функции, надо реализовать функции!
Sinkha
3 / 3 / 1
Регистрация: 04.07.2015
Сообщений: 187
Завершенные тесты: 1
09.07.2015, 19:06  [ТС] #15
Цитата Сообщение от _Valera_ Посмотреть сообщение
Во-первых: длина вводимого пароля не известна
Можно конечно написать что-то вроде stroka[100000] и недеятся что код будет не больше ста тысяч) Иначе нужно как-то сделать бесконечный массив или чтобы массив задавался от кол-ва букв\цифр в строке. Такое можно сделать?
Цитата Сообщение от _Valera_ Посмотреть сообщение
Вы формируете строку(алгоритм который нужно придумать) а потом высылаете эту строку в функцию, где сравниваете весь массив(строку) а не отдельные элементы.
Ну всю строку сверить не особо трудно, достаточно менять цифры и буквы в 1ом элементе строки, потом во второй +1 к значению и повторить и и.д.
Цитата Сообщение от _Valera_ Посмотреть сообщение
Ну и конечно функции, надо реализовать функции!
Как я понимаю функции есть участок кода, который часто используется. ПОчему они так важны?
MoreAnswers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
09.07.2015, 19:06
Привет! Вот еще темы с ответами:

Разработать форму и алгоритм для реализации задачи: Игра: Случайное число - C++
Привет, народ! Сессия на носу, задали лабораторку на С#, надо сдать до 14(, а я в нем ноль, последнее время сам по книжке практикую С++....

Нужны простые задачи для тренировки - C++
Добрый день всем:) Наверное подобных тем как я тут сотни,но всё же. Начал изучать С++(так как необходим для универа)в дальнейшем...

Способ сокрытия данных и реализации класса от клиента - C++
Всем привет! Представляю свою разработку, основанную на модернизации примера сокрытия структуры и реализации целевого класса от любопытных...

Многопоточный парсер наилучшая структура и способ реализации - C++
Добрый день я хочу написать парсер и перед началом хотелось бы спросить про структуру парсера. Задача моего парсера парсить одновременно...


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

Или воспользуйтесь поиском по форуму:
Yandex
Объявления
09.07.2015, 19:06
Ответ Создать тему
Опции темы

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