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

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

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

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

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

Ответ
 
Опции темы Поиск в этой теме
Старый 21.12.2008, 14:00   #1
Влад-mego
Пользователь
 
Регистрация: 27.11.2008
Сообщений: 16
По умолчанию Программа нахождения последовательностей

Код:
#include <iomanip.h>
#include <fstream.h>
#include <conio.h>
const int N=499;
int m,i;
const unsigned n=9;

int kol,b,a,c,d;
void InpF(char *NameF, int *x)
{
m=0;
ifstream finput;
finput.open(NameF);
finput>>x[m];
while (!finput.eof())
{
m++;
finput>>x[m];
if(m>N){ cout<<"nelzia schitat ";
break;}
}
finput.close();
}

void OutF(char *NameF, int *x)
{
int l;
l=0;
ofstream finput;
finput.open(NameF,ios:ut);
finput<<x[l]<<" ";
while (l<(m)){l++; finput<<x[l]<<" ";}
}

void main()
{
clrscr();
int x,t,l,g,A[N],C[N],b;
InpF("C:\\Borlandc\\Bin\\moi.txt",A);
b=0;
g=0;
for (l=0;l<m;l++)
{ if(A[l]==1)

a++;

else if(A[l]!=1) {

a=0;}

if(a>b)b=a;
}

{if ((A[l]!=1))
{ cout<<"Number poslednei edenicu - "<<b+1 <<"\n";
}
else if ((A[l]==1) && (b!=0))
{
g=l ; 
}
}
cout<<"Nomer 1 edenicu -"<<g+1;
}
Вот примерный код проги
по идее она должна находить первый и последний номер максимальной последовательности едениц.Последний вроде находит а первый нет.Люди очень прошу помогите!!!С меня пиво кто сделает)На языке си++.Японимаю что код наверн большой но люди добрые очень прошу если что напишите свой код...

Модератор: тег CODE. И темы блин нормально называй

Последний раз редактировалось MaTBeu; 21.12.2008 в 14:26.
Влад-mego вне форума Ответить с цитированием
Старый 21.12.2008, 19:56   #2
Goblin
Форумчанин
 
Регистрация: 24.11.2007
Сообщений: 196
По умолчанию

Не, вот люди а.

Че это за код билин такой. Не отступов не коментариев. Разбирайтесь мол сами.
И о еще хочет чтоб мы ему помогали.

ДА ты сам поймешь че тут написано увидев это через неделю.
Goblin вне форума Ответить с цитированием
Старый 21.12.2008, 20:56   #3
Влад-mego
Пользователь
 
Регистрация: 27.11.2008
Сообщений: 16
По умолчанию

ну сори так получилось..что мне терь никто помогать что ли не будет из за косяка?_)
Влад-mego вне форума Ответить с цитированием
Старый 21.12.2008, 22:26   #4
pu4koff
Старожил
 
Аватар для pu4koff
 
Регистрация: 22.05.2007
Сообщений: 9,065
По умолчанию

Код:
 if(A[l]==1)

a++;
сюда еще добавьте проверку: if (g == 0) g = l;
т.е. будет как-то так:
Код:
 if(A[l]==1)
{
a++;
if (g == 0) g = l;
}
ЗЫ. Что оформление, что содержание кода безобразные
pu4koff вне форума Ответить с цитированием
Старый 21.12.2008, 22:40   #5
Влад-mego
Пользователь
 
Регистрация: 27.11.2008
Сообщений: 16
По умолчанию

вот при такой последовательности чисел в массиве:
2 1 2 2 2 1 1 1 2 2 1 1 2
должно вывести 6-первый элемент 8-последний
а у меня даже с добавлением того что было написано выше выводит:
последний-4
первый-2
как можно сделать чтоб она все таки выводила правильные числа?
Влад-mego вне форума Ответить с цитированием
Ответ


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



Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Файлы и обработка числовых и символьных последовательностей Xeon332 Общие вопросы C/C++ 5 23.11.2008 17:38
Программа нахождения дубликатов MP3 mutabor Софт 4 20.10.2008 20:36
Методы нахождения корней уравнения werser Помощь студентам 8 20.02.2008 22:41