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

Почему не срабатывает if, если истина? - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Строки, символы. вычислить, сколько раз встречается каждый символ в обоих строках, вывести второе слово второй строки в обратном порядке http://www.cyberforum.ru/cpp-beginners/thread1012644.html
Пусть даны две строки и два символа. Необходимо определить длину каждой строки, вычислить, сколько раз встречается каждый символ в обоих строках, вывести второе слово второй строки в обратном порядке. Есть код, в нем ошыбка, в 22-24 строках. Помогите пожалуста:) #include <iostream.h> #include <conio.h> #include <string.h> #include <stdio.h> int main() { clrscr();
C++ Все нечетные строки матрицы сдвинуть циклически на К элементов влево Помогите пожалуйста нужно нужно создать двумерный динамический массив и все нечетные строки матрицы сдвинуть циклически на К элементов влево. Я попыталась хотя бы просто их сдвинуть но у меня не получается не могли бы вы помочь ? #include <iostream> #include <stdlib.h> #include <conio.h> int **formMatr (int &n, int &m) { printf ("\n enter - n " ) ; http://www.cyberforum.ru/cpp-beginners/thread1012637.html
Найти все локальные минимумы и максимумы в заданном массиве C++
В университете задали написать программу, уже не первую неделю над ней бьюсь. Тема: одномерные массивы. Задание : Елемент називається локальним мінімумом (максимумом), якщо в нього немає сусідів, що менші (більші) за нього. Знайти всі локальні мінімуми та максимуми в заданому масиві a1, a2, …, an. Буду крайне благодарен, заранее спасибо )
C++ Приложение позволяющее рисовать в чужом окне
Создать приложение которое позволит рисовать в чужом окне. Не обязательно чтобы было полноценное приложение типа Paint, можно даже закрашивать экран вводом с клавиатуры.
C++ Класс для вывода логов http://www.cyberforum.ru/cpp-beginners/thread1012622.html
Добрый день. Недавно задался вопросом, как выводить логи. При чём в классе происходит вся работа с открытием файлов, выводом времени и прочее. Но в чем вопрос - как создать такой класс? Логи могу выводить из любой части программы, а значит, что объект класса должен находиться в глобальном пространстве. Насколько я знаю, это не есть хорошо, но в то же время у меня нет идей, как сделать иначе. В...
C++ Помогите разобраться: Найти количество четных делителей натурального числа. Здравствуйте, уважаемые пользователи. Нехватка времени вынуждает меня прибегнуть к помощи умных людей. Не могли бы вы помочь мне разобраться с заданием следующего рода: Найти количество делителей натурального числа. Сколько среди них четных? Заранее благодарна. подробнее

Показать сообщение отдельно
jastic7
0 / 0 / 0
Регистрация: 01.11.2013
Сообщений: 14
19.11.2013, 23:35     Почему не срабатывает if, если истина?
Вообщем задание на двумерную динамику.
Есть 2 кучки камней.
Входной файл содержит 3 строчки
в первых двух - команды которые можно выполнять, в 3ей-число камней, по достижении которого(или "переваливании" за него) игрок выигрывает.
Весь код
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
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
#include <fstream>
#include <iostream>
#include <vector>
using namespace std;
 
int fnIteratorCommand(int fniterator, char fnc, int fnd)
{
    if(fnc=='+')
    {
        fniterator+=fnd;
    }
    else
    {
        fniterator*=fnd;
    }
 
    return (fniterator);
}
 
int main()
{
    ifstream in("INPUT.TXT");
    ofstream out("OUTPUT.TXT");
    char c1, c2;
    int d1, d2, N;
    in >> c1 >> d1 >> c2 >> d2 >> N;
    int Mass[30][30]={};
    for(int i=N; i>0; i--)
    {
        for (int k=N; k>0; k--)
        {
            if( (fnIteratorCommand(i,c1,d1)>=N) || (fnIteratorCommand(i,c2,d2)>=N) || (fnIteratorCommand(k,c1,d1)>=N) || (fnIteratorCommand(k,c2,d2)>=N )) 
            {
                Mass[i][k]=1;
                goto label;
            }
 
            
            if( (Mass[fnIteratorCommand(i,c1,d1)][k]==1) && (Mass[i][fnIteratorCommand(k,c1,d1)]==1) && (Mass[fnIteratorCommand(i,c2,d2)][k]==1) && (Mass[i][fnIteratorCommand(k,c2,d2)]==1) )
            {
                Mass[i][k]==0;
            }
 
            if( (Mass[fnIteratorCommand(i,c1,d1)][k]==0) || (Mass[i][fnIteratorCommand(k,c1,d1)]==0) || (Mass[fnIteratorCommand(i,c2,d2)][k]==0) || (Mass[i][fnIteratorCommand(k,c2,d2)]==0) )
            {
                Mass[i][k]==1;
            }
            label:;
        }
    }
 
    for(int i=0; i<N; i++)
    {
        for(int k=0;k<N; k++)
        {
            if(Mass[i][k]==0)
            {
                out << i << k << "\n";
            }
        }
    }
}

Нужно вывести в файл все кучки, при которых второй игрок выиграет при правильной стратегии.
ПРОБЛЕМА ВСЯ В ТОМ, ЧТО НА 47 СТРОЧКЕ НИКОГДА НЕ СРАБАТЫВАЕТ if
Т.е. делая пошаговую отладку, у меня получилась примерно следующее:
C++
1
2
3
4
if ( (1==1) && (1==1) && (1==1) && (1==1) )
{
...
}
т.е. все условия как бы true, а во внутрь if`a компилятор всё равно не заглядывает.
В чем может быть проблема, господа??
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 16:47. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru