singlepost

Пример С++ 3 версия помогите решить << На главную или назад  

#include <iostream.h>
#include <iomanip.h>
void BBOD (int m[15], char);
int I7OUCK (int m[15]);
void BblBOD (int [15],char ,int);
void main()
{
int a[15],b[15],kola,kolb;
BBOD (a,'a');
BBOD (b,'b');
kola=I7OUCK(a);
kolb=I7OUCK(b);
BblBOD (a,'a',kola);
BblBOD (b,'b',kolb);
}
void BBOD (int m[15],char name)
{
int i;
cout<<"BBEDUTE MACCUB"<<name<<"\n";
for (i=0; i<15; i++)
{
cout<< name <<"["<<i<<"]=";
cin>>m[i];
}
}
int I7OUCK (int m[15])
{
int i,kolmax,max;
kolmax=0; max=0;
for (i=0; i<15; i++)
if (m[i]>0)
kolmax++;
else
if(kolmax>max)
{max=kolmax;
kolmax=0;
}
return(max);
}
void BblBOD (int m[15],char name,int kol)
{
int i;
cout<<"BblBODUM MACCUB"<<name<<"\n";
for (i=0; i<15; i++)
cout<<setw(4)<<m[i];
cout<<"\n";
cout<<"KOJIU4ECTBO I7ODP9D I7OJO}I{UTEJIbHblX EJIEMEHTOB "
<<name<<" ="<<kol<<endl;
}

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

если ввести 1 2 3 4 -5 6 7 8 9 10 11 12 13 14 то она найдёт 4 элемента

если ввести 1 2 3 4 -5 6 7 8 9 10 11 12 -13 14 то она найдёт 8 элементов

где то что надо дописать где не знаю
помогите пожалуйста

45 ответов в теме “Пример С++ 3 версия помогите решить”

  1. 11
    Наталия Онищенко ответил:

    Кто нибудь плиз помогите написать две программы на С++ потоки, синхронизация потоков.

  2. 10
    Владимир Слободкин ответил:

    всё разобрался=)

  3. 9
    Владимир Слободкин ответил:

    M_s[j]=M_s[l];
    на этом месте выдаёт ошибку
    выходной файл пуст.

  4. 8
    Дмитрий Ерохин ответил:

    А в чем, собственно, ошибка?

  5. 7
    Владимир Слободкин ответил:

    Люди, подскажите плиз что за ошибка.
    Уже фиг знает сколько бьюсь над этой задачей
    #include <vcl.h>
    #pragma hdrstop
    #include <stdio.h>
    #include "Unit1.h"
    //—————————————————————————
    #pragma package(smart_init)
    #pragma resource "*.dfm"
    TForm1 *Form1;
    FILE*F;
    FILE*Z;
    int M[100];
    AnsiString S;
    AnsiString M_s[100];
    int i,j,k,l;
    //—————————————————————————
    __fastcall TForm1::TForm1(TComponent* Owner)
    : TForm(Owner)
    {

    }
    //—————————————————————————

    void __fastcall TForm1::FormCreate(TObject *Sender)
    {

    F=NULL;
    F=fopen("Text1.txt","r");
    if(F==NULL)
    {
    ShowMessage("Íå óäàëîñü îòêðûòü ôàéë!");
    return; }
    Z=NULL;
    Z=fopen("Text2.txt","w");
    if(F==NULL)
    {
    ShowMessage("Íå óäàëîñü îòêðûòü ôàéë!");
    return;
    }
    }
    //—————————————————————————

    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    i=0;
    while (!feof(F))
    {fscanf(F,"%s", &M_s[i]);
    ++i;}
    fclose(F);
    for (k=0;k<i;++k)
    {j=random(j);
    l=random(j);
    S=M_s[j];
    M_s[j]=M_s[l];
    M_s[l]=S;
    };
    for(k=0;k<i;++k)
    fprintf(Z,"%i",M_s[k]);
    fclose(Z);
    }

  6. 6
    Владимир Слободкин ответил:

    Прога должна считывать строки из файла перемешивать их рандомом и записывать в другой файл.
    Заранее спасибо.

  7. 5
    Николай Малеваный ответил:

    Люди кто может решить 3 задачи в С++?

  8. 4
    Вадим Каргопольцев ответил:

    Очень трудно в чужих прогах разбираться…

  9. 3
    Александр Гауфлер ответил:

    огого, мы такое же на парах делали xD

  10. 2
    Алексей Лемешев ответил:

    спасибо работает

  11. 1
    Дмитрий Ерохин ответил:

    int I7OUCK (int m[15])
    {
    int i,kolmax,max;
    kolmax=0; max=0;
    for (i=0; i<15; i++)
    if (m[i]>0)
    kolmax++;
    else
    if(kolmax>max)
    {max=kolmax;
    kolmax=0;
    }

    /// begin
    if(kolmax>max)
    {max=kolmax;
    kolmax=0;
    }
    /// end

    return(max);
    }

    Ты забыл после цикла счетчик сравнить

Клуб программистов работает уже ой-ой-ой сколько, а если поточнее, то с 2007 года.