Форум программистов, компьютерный форум CyberForum.ru

Обращение содержимого массива - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Xнач. до Xкон. с шагом dX. http://www.cyberforum.ru/cpp-beginners/thread297991.html
помогите пожалуйста решить. ваще не щарю в С++. Вычислить и вывести на экран в виде таблицы значения функции F на интервале от Xнач. до Xкон. с шагом dX. -ax – c при c < 0 и x ≠ 0 F= (x-a)/(-c ) при c ˃0 и x=0 bx/(c-a) в остальных случаях где a,b,c- действительные числа. вот что у меня получилось #include <iostream> #include <cmath> using...
C++ Функция STRS написать и протестировать функция STRS(str1;str2), которая определят, встретиться какой либо символ из строки str1.C++ помагите пожалуйста с решением :( Добавлено через 21 час 59 минут //--------------------------------------------------------------------------- #include <vcl.h> #pragma hdrstop #include <stdio.h> #include <conio.h> http://www.cyberforum.ru/cpp-beginners/thread297979.html
Посчитать количество слов, начинающихся согласной и заканчивающихся буквой а C++
Здравствуйте, помогите пожалуйста решить задачу, сам уже 2ой день пытаюсь сделать: "посчитать количество слов, начинающихся согласной и заканчивающихся буквой а"
. Имеется текстовый файл. а) Найти длину самой длинной строки б) Найти номер самой длинной строки. Если таких строк несколько, то найти номер C++
. Имеется текстовый файл. а) Найти длину самой длинной строки б) Найти номер самой длинной строки. Если таких строк несколько, то найти номер одной из них. в) Напечатать самую длинную строку. Если таких строк несколько, то напечатать первую из них.
C++ Вечные лабы http://www.cyberforum.ru/cpp-beginners/thread297968.html
Help me, please :'( Есть задача. Для последовательности A1 = 1/2, A2= 1/3, An+1 =An + 1/An-1 составить программу печати n-го элемента в виде обыкновенной несократимой дроби. Ума не приложу, как их делать.
C++ пересекающиеся прямоугольники В каждой строчке входного файле заданы координаты левого нижнего угла и координаты правого верхнего угла прямоугольника на плоскости (для отделения одних элементов от других может использоваться произвольное число пробелов), например: #1 (1, 2) ( 4, 3 ) #4 (2, 5) ( 3, 8 ) #2( 0, 4) (5,6) #7 (3, 0) (5, 2) Символ «#» начинает запись об очередном прямоугольнике. Далее следует номер... подробнее

Показать сообщение отдельно
Selle
 Аватар для Selle
0 / 0 / 0
Регистрация: 13.05.2011
Сообщений: 15
17.05.2011, 19:56     Обращение содержимого массива
ЗАДАЧА:Реализуйте и протестируйте процедуру bool reverse ( float * array, int N), которая осуществляет обращение содержимого массива, т. е первый становится последним элементом, второй предпоследним и т.д. Время выполнения должно быть О(N), выделяемая дополнительная память O(1).

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
//reverse.h  и swap.hЗаголовочный файл
bool reverse ( float * array, int N);
bool swap ( float * a, float * b);
------------------------------------------------------
//reverse.cpp Описание процедуры в её корректности я не уверена)))
 
#include "reverse.h"
#include "swap.h"
bool reverse (float * array, int N)
{
    float first = * array;
    float last = * (array + N - 1);
    while (first < last)
    {
        mswap(&first, &last);
        first++; last--;
        return true;
    }
 
}
--------------------------------------------------------------------
//mswap.cpp Описание процедуры точно работает
 
#include "swap.h"
bool mswap (float * a, float * b)
{
    int  aold = *a;
    *a = *b;
    *b = aold;
   
    return true;
-------------------------------------------------------
//testreverse.cpp Проверка программы
 
#include <iostream>
#include <vector>
#include "reverse.h"
//init
using namespace std;
 
int main()
{
    cout << "Input number of elenemets in array: ";
    int N;
    cin >> N; cout << endl;
 
/*  float array[N];
 
    for (int i = 1; i <=N; i++)
    {   float s;
        cout << "Input " << i << " element: " ;
        cin >> s;
        array[i] = s;
    }*/
 
    vector <float> array;
    for(int i = 1; i <= N; i++)
    {
        cout << "Input element: ";
        float r;
        cin >> r;
        array.push_back(r);
    }
 
    cout << endl;
 
    cout << "Before reverse: ";
    for (int i = 0; i < N; i++)
        cout << " " << array[i] << " ";
 
    cout << endl; cout << endl;
 
    cout << "After reverse: ";
 
    reverse(&array, N); -> Здесь проблемусечка!
 
//reverse
    for (int i = 0; i < N; i++)
    cout << " " << array[i] << " ";
    return 0;
ОШИБОЧКА

$ make all
g++ -g -c testrev.cpp -o testrev.o
testrev.cpp: In function 'int main()':
testrev.cpp:40: error: cannot convert 'std::vector<float, std::allocator<float>
>*' to 'float*' for argument '1' to 'bool reverse(float*, int)'
make: *** [testrev.o] Error 1

 Комментарий модератора 
Используйте теги форматирования кода!
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 22:41. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru