Форум программистов, компьютерный форум, киберфорум
Наши страницы
С++ для начинающих
Войти
Регистрация
Восстановить пароль
 
Рейтинг 4.67/6: Рейтинг темы: голосов - 6, средняя оценка - 4.67
The__Cure
0 / 0 / 0
Регистрация: 09.03.2011
Сообщений: 9
1

Преобразовать массив

19.03.2011, 08:23. Просмотров 1143. Ответов 1
Метки нет (Все метки)

Пример массива и дополнительных переменных приведены ниже:
{ 1.2, -1.8, -4.5, 8.5, -0.1, -0.9, 9.7, -9.8, 0.2, 3.5, 5.7, -3.8, -6.0, 4.2, 4.3, -5.1}
a=0 b=3 A=3 B=6 C=1
Результаты должны выводиться на экран.
преобразовать массив таким образом, чтобы сначала располагались все элементы, целая часть которых лежит в интервале [a,b], а потом- все остальные.
0
Лучшие ответы (1)
QA
Эксперт
41792 / 34177 / 6122
Регистрация: 12.04.2006
Сообщений: 57,940
19.03.2011, 08:23
Ответы с готовыми решениями:

Массив: Преобразовать массив, прибавив к четным числам, входящим в массив, значение первого элемента.
Есть задача С клавиатуры вводятся элементы целочисленного массива размера N. Преобразовать его,...

Задан массив из k символов. Преобразовать массив следующим образом: расположить символы в обратном порядке
Задан массив из k символов. Преобразовать массив следующим образом: расположить символы в обратном...

Как преобразовать массив в динамический? Массив вычисляет сумму элементов каждой диагонали матрицы
Ошибка : Вызвано исключение по адресу 0x00BB2F4F в Проект6.exe: 0xC0000005: нарушение прав доступа...

Дан целочисленный массив размера N. Преобразовать массив, увеличив каждую его серию на один элемент
1. Дан целочисленный массив размера N. Преобразовать массив, увеличив каждую его серию на один...

Дан целочисленный массив размером N. Преобразовать массив, увеличив длину каждой серии на один элемент
#include "stdafx.h" #include <iostream> using namespace std; int main() { int n; int k=0;...

1
PatchPro
5 / 5 / 1
Регистрация: 11.04.2010
Сообщений: 40
18.05.2011, 16:54 2
Лучший ответ Сообщение было отмечено The__Cure как решение

Решение

Под формы (C++ Builder 6)
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
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
//---------------------------------------------------------------------------
 
#include <vcl.h>
#pragma hdrstop
  #include <math.h>
#include "Unit1.h"
//---------------------------------------------------------------------------
#pragma package(smart_init)
#pragma resource "*.dfm"
TForm1 *Form1;
int n,i,j,numab,elem_max,sum_after_fpol,fpol,index_max;
double *x = new double [n];
double a,b,y,f,tmp;
//---------------------------------------------------------------------------
__fastcall TForm1::TForm1(TComponent* Owner)
        : TForm(Owner)
{
}
//---------------------------------------------------------------------------
 
void __fastcall TForm1::ButtonEntClick(TObject *Sender)
{
a=StrToInt(Edit3->Text);
b=StrToInt(Edit4->Text);
x[n]=StrToFloat(Edit1->Text);        //ввод массива
n++;
Edit1->Text="";                      //очистить едит и установить фокус
Edit1->SetFocus();        
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ButtonOutClick(TObject *Sender)
{
ButtonEnt->Enabled=False;
for (i=0;i<n;i++)
{
Memo1->Lines->Add(x[i]);           //вывод массива
}
     for (i=0; i<n;i++)
     {
       if (abs(x[i])>elem_max)    //поиск номера максимального элемента
       {
        index_max=i;
        elem_max=x[i];
       }
     }
 
       for (i=0; i<n;i++)         //поиск первого положительного
     {
      if (x[i]>0)
       {
       fpol=i;
       break;
       }
      }
 
for (i=fpol+1; i<n;i++) sum_after_fpol +=x[i];   //сумма после первого положительного
Label3->Caption=FloatToStr(index_max);
Label4->Caption=FloatToStr(sum_after_fpol);
}
//---------------------------------------------------------------------------
void __fastcall TForm1::ButtonSortClick(TObject *Sender)
{
ButtonOut->Enabled=False;
Memo1->Clear();
for(i=0;i<n;i++)
{
for(j=i+1;j<n;j++)
{
if(int(x[j])>=a&&int(x[j])<=b)          //если целая часть в интервале от a до б
 {                                      //p.s int как раз выкидывает целую часть double-типа
  tmp=x[j];
  x[j]=x[i];
  x[i]=tmp;
 }
}
 Memo1->Lines->Add(x[i]);             //вывод упорядоченного массива
}
ButtonSort->Enabled=False;
 
}
//---------------------------------------------------------------------------
0
Answers
Эксперт
37091 / 29110 / 5898
Регистрация: 17.06.2006
Сообщений: 43,301
18.05.2011, 16:54

Дан целочисленный массив размера N. Преобразовать массив, уменьшив каждую его серию на один элемент
Помогите с задачей! Серия - это одинаковые элементы, идущие подряд. Пример: Ввод массива: 1 1 2...

Дан целочисленный массив размера N. Преобразовать массив, увеличив каждую его серию на один элемент
Помогите преобразовать код из языка С# в С++. Занимался разбором задачи на языке С++. Вот...

Преобразовать массив следующим образом: сначала должны стоять цифры, входящие в массив, а затем все остальные символы
помогите пожайлуста с задачей. Задан массив из k символов. Преобразовать массив следующим...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
2
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2020, vBulletin Solutions, Inc.