Форум программистов
 

Восстановите пароль или Зарегистрируйтесь на форуме, о проблемах и с заказом рекламы пишите сюда - alarforum@yandex.ru, проверяйте папку спам!

Вернуться   Форум программистов > C/C++ программирование > Общие вопросы C/C++
Регистрация

Восстановить пароль
Повторная активизация e-mail

Купить рекламу на форуме - 42 тыс руб за месяц

Ответ
 
Опции темы Поиск в этой теме
Старый 18.12.2011, 10:20   #1
Mike26rus
 
Регистрация: 09.12.2011
Сообщений: 6
По умолчанию затираются данные

Вот задание: Даны два натуральных числа N и K. Требуется вывести в файл все цепочки x1,x2,…,xN такие, что xi — натуральное и 1 ≤ xi ≤ K.
Формат входных данных:
Заданы два натуральных числа N и K (N, K ≤ 6).
Формат выходных данных:
Выведите все требуемые цепочки, разделяя числа пробелами, в произвольном порядке по одной на строке. Никакая цепочка не должна встречаться более одного раза.
Вроде бы сделал правильно, но в файле ничего не выводится. Вот код:
Код:
#include <stdio.h>
const A = 6;

main() {
int B[A], t, i, K, N;
FILE *input, *output;
input = fopen("input.txt", "r");
output = fopen ("output.txt", "w");
fscanf(input, "%d %d", &N, &K);
for ( i = 1; i<=N; i++)
{ B[i] = 1 ; }
while (!(B[1] = K))
{ B[i]++;
i--;
for ( t = N; !(t=1); t--);
{ fprintf(output, "%d ", B[t]);  
    }
fprintf(output, "\n");  
if (i = 1) 
{ i = N ; }        
     
      }
fclose(input);
fclose(output);

return 0;
}

Последний раз редактировалось Mike26rus; 18.12.2011 в 10:24.
Mike26rus вне форума Ответить с цитированием
Старый 18.12.2011, 10:46   #2
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

Mike26rus, я в логике программы не разбирался, но обращаю ваше внимание на следующую строку:
Код:
while (!(B[1] = K))
У вас цикл будет работать только тогда, когда B[1] будет равно нулю. А этого не может быть, так как у вас К неравен нулю, а вы присваиваете К к B[1].

Последний раз редактировалось 8Observer8; 18.12.2011 в 11:07. Причина: орфография
8Observer8 вне форума Ответить с цитированием
Старый 18.12.2011, 10:52   #3
Mike26rus
 
Регистрация: 09.12.2011
Сообщений: 6
По умолчанию

тьфу блин, постоянно путаю присваивание и сравнивание. Спасибо
Mike26rus вне форума Ответить с цитированием
Старый 18.12.2011, 11:06   #4
8Observer8
Старожил
 
Аватар для 8Observer8
 
Регистрация: 02.01.2011
Сообщений: 3,323
По умолчанию

На здоровье
8Observer8 вне форума Ответить с цитированием
Ответ


Купить рекламу на форуме - 42 тыс руб за месяц



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Как упорядочить данные (перевести данные из стольбцов в строки)? opeck Microsoft Office Excel 3 21.11.2011 01:43
https данные -=Virus=- Работа с сетью в Delphi 4 09.05.2011 19:57
Почему после выполнения команды cprintf значения строк затираются? Tolias Помощь студентам 10 23.11.2010 12:00
Данные по столбцам - упорядочить данные к друг другу PetroD Microsoft Office Excel 10 07.08.2010 12:30
данные бд elfers БД в Delphi 5 02.04.2009 12:38