Форум программистов, компьютерный форум, киберфорум
С++ для начинающих
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 5.00/15: Рейтинг темы: голосов - 15, средняя оценка - 5.00
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187

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

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

Студворк — интернет-сервис помощи студентам
Дайте мне какую-нить задачу, которая будет больше на логическое мышление и решения логические должны быть, нежели на большое знание языка СИ++. В интернете я нашел задачи, но они либо крайне простые, либо крайне тяжелые. Для меня программирование это интересное занятие. Недавно написал алгоритм создания игры сапер. Он заполняет массив начала "минами" цифрами 9, потом этот же массив заполняет числами как в оригинальном сапере. Если есть такая какая технология чтобы можно было написать программу чтобы она могла общаться с оригинальным сапером из виндовс, я мог бы попробовать написать программу - бота, который смог бы его решать. В общем если коротко, то киньте задачку на логику. Ну и если можно, то скажите как заставить общаться 2ум разным программам между собой
0
Лучшие ответы (1)
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
04.07.2015, 20:15
Ответы с готовыми решениями:

Нужны задачи для новичка
Всем привет. Я недавно начал изучать C#. Дошел до темы,методы,классы.Смотрел видео,читал разные статьи,но везде слышал,что нужно больше...

нужны идеи в реализации кода
В общем если кто подскажет хоть примерно как это должно выглядеть буду очень благодарен. Или просто части кода в качестве примера можно...

Локальный чат на VB: нужны исходники или идеи реализации
Ищу хороший пример, нужен сервер и желательно оконный , с возможностью отправлять сообщения подключенным клиентам ( список подключенных),...

37
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
04.07.2015, 21:38
Цитата Сообщение от Sinkha Посмотреть сообщение
Ну и если можно, то скажите как заставить общаться 2ум разным программам между собой
Отдельный вопрос, для другого раздела форума


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


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


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

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

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

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

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

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

Подсказка: время работы такой программы может быть огромным, так что если не хотите что б она закончила свою работу через пару лет, то начните только с чисел.
1
 Аватар для Ouroboros-SK
63 / 63 / 47
Регистрация: 08.09.2013
Сообщений: 187
Записей в блоге: 1
05.07.2015, 03:04
Не знаю, можно ли оставлять на форуме ссылки на внешние ресы, но есть такая штука на логику, как спортивное программирование. Лучший из них, наверно, codeforces.
0
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187
05.07.2015, 15:11  [ТС]
Спасибо, попробую порешать. ПРавда некоторые приемы нужно будет погуглить. Как я понял нужно написать брутфорс мини)
0
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187
06.07.2015, 22:03  [ТС]
Написал код для подбора пароля из цифр. Он простой оказался очень, а вот с символами проблемки) Как я понял нужно через аск 2 подбирать значения для пароля.
0
Эксперт .NET
 Аватар для Даценд
5878 / 4755 / 2939
Регистрация: 20.04.2015
Сообщений: 8,361
06.07.2015, 22:11
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.
Не используя дополнительных массивов, переставить начало и конец.
0
1 / 1 / 0
Регистрация: 20.06.2014
Сообщений: 47
06.07.2015, 22:23
Можно ещё реализовать класические игры.
0
 Аватар для IrineK
2023 / 1641 / 425
Регистрация: 23.02.2011
Сообщений: 6,002
Записей в блоге: 25
06.07.2015, 22:28
Лучший ответ Сообщение было отмечено SatanaXIII как решение

Решение


a c m p .ru/?main=tasks (без пробелов)
0
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187
07.07.2015, 15:32  [ТС]
Цитата Сообщение от 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.
Не используя дополнительных массивов, переставить начало и конец.
Тоже интересная задачка, но я закончу с первой, а потом к твоей перейду
0
23 / 23 / 14
Регистрация: 01.05.2015
Сообщений: 180
07.07.2015, 15:56
Еще можно нагуглить сборник пасьянсов и реализовать их алгоритмы.
0
859 / 448 / 112
Регистрация: 06.07.2013
Сообщений: 1,491
08.07.2015, 16:29
Реализуй в консоли полноценный 3д ASCII куб, крутящийся ( Достаточно интересно выглядит )
0
1472 / 827 / 140
Регистрация: 12.10.2013
Сообщений: 5,456
08.07.2015, 16:35
Цитата Сообщение от Sinkha Посмотреть сообщение
и решения логические должны быть,
Погуглить “логические игры” и написать для них код игры либо бота?
0
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187
09.07.2015, 16:19  [ТС]
Цитата Сообщение от _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 минут
Возможно я не правильно понял условия задачи, ведь подбор идет моментально
0
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
09.07.2015, 17:08
Цитата Сообщение от Sinkha Посмотреть сообщение
while(char(a) != stroka[i]){
неа, так то конечно быстро.

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

Добавлено через 2 минуты
Ну и конечно функции, надо реализовать функции!
0
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187
09.07.2015, 19:06  [ТС]
Цитата Сообщение от _Valera_ Посмотреть сообщение
Во-первых: длина вводимого пароля не известна
Можно конечно написать что-то вроде stroka[100000] и недеятся что код будет не больше ста тысяч) Иначе нужно как-то сделать бесконечный массив или чтобы массив задавался от кол-ва букв\цифр в строке. Такое можно сделать?
Цитата Сообщение от _Valera_ Посмотреть сообщение
Вы формируете строку(алгоритм который нужно придумать) а потом высылаете эту строку в функцию, где сравниваете весь массив(строку) а не отдельные элементы.
Ну всю строку сверить не особо трудно, достаточно менять цифры и буквы в 1ом элементе строки, потом во второй +1 к значению и повторить и и.д.
Цитата Сообщение от _Valera_ Посмотреть сообщение
Ну и конечно функции, надо реализовать функции!
Как я понимаю функции есть участок кода, который часто используется. ПОчему они так важны?
0
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
10.07.2015, 14:29
Цитата Сообщение от Sinkha Посмотреть сообщение
Как я понимаю функции есть участок кода, который часто используется. ПОчему они так важны?
Потому что я так написал в задании.

Цитата Сообщение от Sinkha Посмотреть сообщение
Можно конечно написать что-то вроде stroka[100000] и недеятся что код будет не больше ста тысяч) Иначе нужно как-то сделать бесконечный массив или чтобы массив задавался от кол-ва букв\цифр в строке. Такое можно сделать?
http://cppstudio.com/post/6110/


Цитата Сообщение от Sinkha Посмотреть сообщение
Ну всю строку сверить не особо трудно, достаточно менять цифры и буквы в 1ом элементе строки, потом во второй +1 к значению и повторить и и.д.
Не понял, ну ладно.
0
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187
12.07.2015, 23:12  [ТС]
Цитата Сообщение от _Valera_ Посмотреть сообщение
http://cppstudio.com/post/6110/
Не могу решить задачу. Если stroka является кодом, то как создать строку которая его подбирает и носит имя brut? Если писать такой код
C++
1
2
3
4
5
6
7
        std::string stroka, brut;
 
    setlocale(LC_ALL, "Russian");
 
    std :: cout << ("Введите пароль \n");
 
    std::getline(std::cin, stroka);
То заполнив массив с клавы в строку заполняется код. brut как бы является нулевой строкой и туда нельзя записать значение не с клавы, то есть никак не получится записать в brut[3] никакую информацию. Если задать статику, например brut[2048], то не выходит сравнивать brut[2048] и stroka, компилятор пишет "невозможно преобразовать аргумент 2 из "std::string" в "const char *""
В общем дай хотяб подсказку как их сравнивать или что иное
0
42 / 1 / 1
Регистрация: 12.07.2015
Сообщений: 8
12.07.2015, 23:19
Sinkha, вот тут посмотри.
0
 Аватар для _Valera_
495 / 377 / 136
Регистрация: 27.01.2015
Сообщений: 1,588
13.07.2015, 15:49
Цитата Сообщение от Sinkha Посмотреть сообщение
о заполнив массив с клавы в строку заполняется код. brut как бы является нулевой строкой и туда нельзя записать значение не с клавы, то есть никак не получится записать в brut[3] никакую информацию. Если задать статику, например brut[2048], то не выходит сравнивать brut[2048] и stroka, компилятор пишет "невозможно преобразовать аргумент 2 из "std::string" в "const char *""
В общем дай хотяб подсказку как их сравнивать или что иное

Что-то вроде того
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include <iostream>
#include <string>
 
using namespace std;
 
string password = "1qwerty1";
 
bool Terminal(string & str)
{
    return(str == password);
}
 
int main()
{
    string str;
    cout<<"Input:"<<endl;
    getline(cin,str);
 
    cout<<Terminal(str);
        
    system("PAUSE");
    return 0;
}
0
 Аватар для Sinkha
3 / 3 / 2
Регистрация: 04.07.2015
Сообщений: 187
13.07.2015, 17:53  [ТС]
Цитата Сообщение от _Valera_ Посмотреть сообщение
Что-то вроде того
Пошел-ка я читать литературу Си, а то нифига не понятно
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
13.07.2015, 17:53
Помогаю со студенческими работами здесь

Нужны простые ответы для новичка в друпал
Я с Drupal никогда не работал. В основном работаю в статике, есть небольшой опыт с WorldPress. Вопросы следующие: 1.Бывает ли друпал...

Java EE против Spring: нужны пояснения для новичка
Здравствуйте, я недавно начал изучать JAVA WEB технологии, уже успел вкратце изучить Servlet, JSP и Spring, и тут в блоге у автора вот...

Мультиязычное приложение - какой способ для реализации выбрать
Сталкиваюсь впервые (собственно и опыт не большой у меня). Приложение большое... очень.... необходима поддержка 9-12 языков. Почитал,...

Какой способ предпочтительнее для реализации повторяющейся функции
Требуется раз в минуту выполнять определенное действие, скажем, на экране менять счетчик времени. Понятно, что это надо делать не в UI. ...

Задачи для новичка
Здравствуйте Уважаемые программисты C#. Начну с того что я студент первого курса информационного факультета и мне нужна ваша помощь:cry:....


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

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
SDL3 для Web (WebAssembly): Синхронизация спрайтов SDL3 и тел Box2D
8Observer8 04.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-sync-physics-sprites-sdl3-c. zip На первой гифке отладочные линии отключены, а на второй включены:. . .
SDL3 для Web (WebAssembly): Идентификация объектов на Box2D v3 - использование userData и событий коллизий
8Observer8 02.03.2026
Содержание блога Финальная демка в браузере. Итоговый код: finish-collision-events-sdl3-c. zip https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11680&amp;d=1772460536 Одним из. . .
Реалии
Hrethgir 01.03.2026
Нет, я не закончил до сих пор симулятор. Эта задача сложнее. Не получилось уйти в плавсостав, но оно и к лучшему, возможно. Точнее получалось - но сварщиком в палубную команду, а это значит, в моём. . .
Ритм жизни
kumehtar 27.02.2026
Иногда приходится жить в ритме, где дел становится всё больше, а вовлечения в происходящее — всё меньше. Плотный график не даёт вниманию закрепиться ни на одном событии. Утро начинается с быстрых,. . .
SDL3 для Web (WebAssembly): Сборка библиотек: SDL3, Box2D, FreeType, SDL3_ttf, SDL3_mixer и SDL3_image из исходников с помощью CMake и Emscripten
8Observer8 27.02.2026
Недавно вышла версия 3. 4. 2 библиотеки SDL3. На странице официальной релиза доступны исходники, готовые DLL (для x86, x64, arm64), а также библиотеки для разработки под Android, MinGW и Visual Studio. . . .
SDL3 для Web (WebAssembly): Реализация движения на Box2D v3 - трение и коллизии с повёрнутыми стенами
8Observer8 20.02.2026
Содержание блога Box2D позволяет легко создать главного героя, который не проходит сквозь стены и перемещается с заданным трением о препятствия, которые можно располагать под углом, как верхнее. . .
Конвертировать закладки radiotray-ng в m3u-плейлист
damix 19.02.2026
Это можно сделать скриптом для PowerShell. Использование . \СonvertRadiotrayToM3U. ps1 <path_to_bookmarks. json> Рядом с файлом bookmarks. json появится файл bookmarks. m3u с результатом. # Check if. . .
Семь CDC на одном интерфейсе: 5 U[S]ARTов, 1 CAN и 1 SSI
Eddy_Em 18.02.2026
Постепенно допиливаю свою "многоинтерфейсную плату". Выглядит вот так: https:/ / www. cyberforum. ru/ blog_attachment. php?attachmentid=11617&stc=1&d=1771445347 Основана на STM32F303RBT6. На борту пять. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru