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

не работает sqrt декомпозиция - C++

Войти
Регистрация
Восстановить пароль
Другие темы раздела
C++ Задача "Водолей" http://www.cyberforum.ru/cpp-beginners/thread642366.html
Вот условие: У исполнителя “Водолей” есть два сосуда, первый объемом A литров, второй объемом B литров, а также кран с водой. Водолей может выполнять следующие операции: Наполнить сосуд A...
C++ Двоичные файлы У меня есть код программы работающий с текстовыми файлами, #include <iostream> #include <conio.h> #include <cstdlib> #include <locale.h> #include <string.h> #include <fstream> using... http://www.cyberforum.ru/cpp-beginners/thread642357.html
C++ Реализация собственного умного укзателя
Доброго времени суток! При самостоятельной реализации умного указателя столкнулся с проблемой при удалении самого указателя. Код программы имеет вид: #pragma once template <class Object>...
C++ Описать класс "Конус"
Язык С 1. Опишите класс "Конус" Данные класса: координаты центра основания, радиус основания, высота. Конструкторы класса: конструктор по умолчанию, конструктор конуса с центром в начале...
C++ деббагинг и отладка c++ http://www.cyberforum.ru/cpp-beginners/thread642303.html
С чего начать,о отладки вообще ничего не знаю и о дебагинге.
C++ Исключения в классах Здравствуйте. Какими средствами правильней всего сделать обработку исключений в классах? /* например, эта функция */ int SomeClass::someFunc( int some_arg ) { return some_arg * 18 } /* для... подробнее

Показать сообщение отдельно
Mines
0 / 0 / 0
Регистрация: 25.08.2012
Сообщений: 8

не работает sqrt декомпозиция - C++

25.08.2012, 13:38. Просмотров 1720. Ответов 6
Метки (Все метки)

Добрый день, пытался разобраться с sqrt-декомпозицией. Суть понял, но вот код не хочет работать. точнее он не хочет работать правильно.
вот код:
C++
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
#include<iostream>
#include<cmath>
#include<cstdlib>
#include<cstdio>
 
 
using namespace std;
 
int main() {
    int n ;
    cin>>n;
    int mas_1[n];
    for (int i = 0; i<n; i++)
        cin>>mas_1[i];
        
    int len = (int)sqrt(n) + 1;
    int mas_2[n];
    for (int i = 0; i < n; i++)
        {
        mas_2[i / len] += mas_1[i];
        cout<<mas_2[i]<<' ';
        }
}
input:
8
3 4 8 7 1 6 1 6
(все через пробел)
output:3 25350624 -1080283792 6 7 134515024 -1080283848 8

А должно же быть нормальные промежутки, то есть во втором массиве первый элемент должен быть равен 15. второй 14 и так далее.
Вопрос - почему так выводит и что я сделал неправильно?
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
 
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2017, vBulletin Solutions, Inc.
Рейтинг@Mail.ru