Визуальное Прогр. Язык С++ . Начинающий

Тема в разделе "C/C++/C#", создана пользователем -, 4 дек 2011.

Статус темы:
Закрыта.
  1. Гость

    Задача:Найти произведение элементов одномерного массива, расположенных между максимальным и минимальным элементами.
    Язык с++.
    Builder 6


    Пробовала по разному, но толком ничего не выходит, вот неработающий кусок программы:

    в начале объявлено:
    char s[200];
    int A[50],dim=1;

    затем:
    Код (C++):
    void __fastcall TForm1::Button1Click(TObject *Sender)
    {
    if (Edit2->Text!="")
    {
    dim=strlen(Edit2->Text.c_str());
    Label4->Caption="размерность массива: "+FloatToStr(dim);
    for (int i=0; i<dim; i++)
    {
    A[i]=Edit2->Text[i];
    }
    /*
    strcpy(s,Edit2->Text.c_str());
    istringstream istr(s);
    for( int i=0;i<dim;i++)
    {
    istr>>A[i];
    } */


    int max=0;
    bool f=false;
    for(int i=1; i<dim; i++)
    if (A[max]<A[i])
    {
    max=i;
    f=true;
    }
    if(!f && A[max]==A[1])
    {
    Label4->Caption= "Максимума нет";
    }
    Label4->Caption=IntToStr(A[max]);
    int min=0;
    for(int i=1; i<dim; i++)
    if (A[min]>A[i])
    {
    min=i;
    }
    Label4->Caption=IntToStr(A[min]);
    int pr; // искомое произведение
    if ( min<max)
    {
    pr=1;
    for (int i=min;i<=max;i++)
    pr=pr*A[i];
    }
    else
    {
    pr=1;
    for (int i=max;i<=min;i++)
    pr=pr*A[i];
    }
    Label4->Caption=IntToStr(pr);
    }
    }
    представлено 2 способо загнать эл-ты строки в массив А но ни то, ни то не работает......подскажите как это сделать кто знает.
     
  2. lazybiz

    lazybiz Well-Known Member
    C\C++ Team

    Регистрация:
    3 ноя 2010
    Сообщения:
    1.344
    Симпатии:
    0
    Давай по порядку.
    Максимальный элемент в массиве можешь найти?
    А минимальный?
    А произведение элементов в массиве от индекса i до индекса j (включительно) ?
     
Загрузка...
Статус темы:
Закрыта.

Поделиться этой страницей