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

Программа Пентамино - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ error C2078: слишком много инициализаторов при создании массива http://www.cyberforum.ru/cpp-beginners/thread785400.html
Создаю текстовый массив. Выдает ошибку "error C2078: слишком много инициализаторов". При создании Int массива все нормально, а при создании екстового валит ошибку ( error C2078: слишком много инициализаторов ): char students = {"a", "b", "c"}; Что я наделал?)
C++ Исправьте массив Решение проблемы нашел. Удалите тему пожалуйста. http://www.cyberforum.ru/cpp-beginners/thread785392.html
Использование оператора fgets C++
Помогите решить задачу, пожалуйста, с использованием функции fgets. В командной строке программе передаются два числа. Из файла с текстом своей программы выполнить чтение соответствующих строк, найти в них самое длинное слово и поменять местами четные и нечетные символы этого слова.
Стек (связный список). Нужно ли проверять на пустоту? C++
Всем добра, у меня к Вам есть парочка вопросов о стеке, буду благодарен за помощь. Передо мной стояла задача: 1) Инициализировать стек; 2) Заполнить его значениями; 3) Добавить одно значение, через консоль; 4) Удалить значение, которое добавили. Вот мой код, он рабочий. #include "stdafx.h"
C++ сделать функцию, которая вычисляет сумму всех нечетных значений переданного ей массива http://www.cyberforum.ru/cpp-beginners/thread785347.html
сделать функцию, которая вычисляет сумму всех нечетных значений переданного ей массива функция рекурсивная
C++ заданы 2 строки, состоящие из слов, разделенных пробелами заданы 2 строки, состоящие из слов, разделенных пробелами. Если последнее слово больше предпоследнего , то заменить первые пять буквой "а", в противном случае все символы заменить на "*". подробнее

Показать сообщение отдельно
paserge
-3 / 0 / 0
Регистрация: 16.01.2013
Сообщений: 42
19.02.2013, 18:42  [ТС]     Программа Пентамино
Цитата Сообщение от Avazart Посмотреть сообщение
Ну конечно можно писать и таким макаром и что главное оно может работать но возможно стоит "вернуться" книге и почитать еще про синтаксис и возможности языка С++, а то как минимум ваш код никто не будет читать.

К примеру первые строчки кода текста

C++
1
2
3
int b[]={
28,29,30,31,32,29,30,31,32,33,51,52,53,54,55,52,53,54,55,56,53,54,55,56,57,54,55,56,57,58,63,64,65,66,67,64,65,66,67,68,65,66,67,68,69,66,67,68,69,70,75,76,77,78,79,76,77,78,79,80,77,78,79,80,81,78,79,80,81,82,87,88,89,90,91,88,89,90,91,92,89,90,91,92,93,90,91,92,93,94,112,113,114,115,116,113,114,115,116,117,29,41,53,65,77,30,42,54,66,78,31,43,55,67,79,32,44,56,68,80,39,51,63,75,87,41,53,65,77,89,42,54,66,78,90,43,55,67,79,91,44,56,68,80,92,46,58,70,82,94,51,63,75,87,99,53,65,77,89,101,54,66,78,90,102,55,67,79,91,103,56,68,80,92,104,58,70,82,94,106,65,77,89,101,113,66,78,90,102,114,67,79,91,103,115,68,80,92,104,116
}
;
Что нельзя заменить на

C++
1
2
3
4
5
6
const int first= 28;
const int last= 116;
const int size= last-first;
 
int b[size];
for(int i=0; i<size; i++)  b[i]= first+i;
Можно специально написать ф-цию fill для заполнения массива...

Если не хочется терять время на циклах заполнения можно использовать шаблоны, что бы заполнять во время компиляции.

А вообще я та и не понял для тут такие массивы...
с массивами проблем нет никаких они уже созданы кстати очень простым способом
Кликните здесь для просмотра всего текста
a[]= {0,11,12,13,24)
b[]= {0,1,2,3,4) {0,12,24,36,48)
d[]= {0,1,2,12,14) {0,1,12,24,25) {0,1,13,24,25) {0,2,12,13,14)
e[]= {0,1,2,12,24) {0,1,2,14,26) {0,12,22,23,24) {0,12,24,25,26)
f[]= {0,1,13,14,26) {0,1,11,12,23) {0,11,12,22,23) {0,12,13,25,26)
g[]= {0,1,12,23,24) {0,1,13,25,26) {0,10,11,12,22) {0,12,13,14,26)
h[]= {0,1,2,13,25) {0,10,11,12,24) {0,12,13,14,24) {0,12,23,24,25)
k[]= {0,1,2,12,13) {0,1,2,13,14) {0,1,11,12,13) {0,1,12,13,14)
{0,1,12,13,24) {0,1,12,13,25) {0,11,12,23,24) {0,12,13,24,25)
m[]= {0,1,11,12,24) {0,1,13,14,25) {0,10,11,12,23) {0,11,12,13,23)
{0,11,12,13,25) {0,11,12,24,25) {0,12,13,14,25) {0,12,13,23,24)
n[]= {0,1,2,3,12) {0,1,2,3,15) {0,9,10,11,12) {0,12,13,14,15)
{0,1,12,24,36) {0,1,13,25,37) {0,12,24,35,36) {0,12,24,36,37)
p[]= {0,1,2,3,13) {0,1,2,3,14) {0,10,11,12,13) 0,11,12,13,14)
{0,11,12,24,36) {0,12,13,24,36) 0,12,23,24,36) {0,12,24,25,36)
r[]= {0,1,2,11,12) {0,1,2,14,15) {0,1,10,11,12) {0,1,13,14,15)
{0,11,12,23,35) {0,12,13,25,37) {0,12,23,24,35) {0,1 2,24,25,37)
z[]={28,29,30,31,32,33,39,40,41,42,43,44,45,46,51,52,53,54,55,56,
57,58,63,64,65,66,67,68,69,70,75,76,77,78,79,80,81,
82,87,88,89,90,91,92,93,94,99,100,101,102,103,104,105,112,113}
есть 12 фигурок a b d e f g h k m n p r и 60 вершин
из них и были сформированы 12 массивов.
0 заменяется на число из z остальные элементы получаются путем сложения.
получаем массивы где каждые 5 чисел подряд представляют одну фигурку.
далее самая малость перебрать 12 массивов отсекая совпадения чтобы образовать массив из 60 элементов где нет повторяющихся цифер.


Добавлено через 11 минут
Код C++
1 const int first= 28;
2 const int last= 116;
3 const int size= last-first;
4 int b[size];
5 for(int i=0; i<size; i++) b[i]= first+i;

сдесь вы создали массив из 116 элементов а у меня данный массив 140 элементов
 
Текущее время: 12:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru