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

Найти сумму элементов массива, расположенных до 13 элемента - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Что учить дальше? http://www.cyberforum.ru/cpp-beginners/thread430935.html
Прата С. - Язык программирования С++. Лекции и упражнения (5-е изд.) - 2007 Все освоил что дальше посоветуйте. Темы книги: Глава 1. С чего начать? Глава 2. Приступаем к изучению С++ Глава 3. Работа с данными Глава 4. Составные типы Глава 5. Циклы и выражения отношений Глава 6. Операторы ветвления и логические операции
C++ Составить схему программы и программу на языке C++ Составить схему программы и программу на языке C++ с использованием оператора цикла с предусловием и оператора цикла с постусловием для вычисления функции sin(x+a) с заданной точностью эпсилон с использованием разложения в ряд: sin(a)+xcosa-x*xsin(a)/2!-x*x*xcos(a)/3!+x*x*x*xsin(a)/4!+... Область сходимости:|x|<бесконечности http://www.cyberforum.ru/cpp-beginners/thread430909.html
C++ Из матрицы X (mxn) построить матрицу Y, поменяв местами строки и столбцы.
Из матрицы X (mxn) построить матрицу Y, поменяв местами строки и столбцы.
C++ Как сделать переменную пустой (обнулить)?
Пишу простейшего миллионера, вариантом ответа на вопросы которого является переменная типа Int. Проблема в том, что отвечая на один вопрос, значение остается и при следующем вопросе Вопрос - Как сделать ее пустой в опр. месте? Спасибо!
C++ Создание библиотеки http://www.cyberforum.ru/cpp-beginners/thread430872.html
Нужно создать отдельную библиотеку. Чтобы в программе можно было просто включать математические функции arcsin, arccos, arctg, arcctg. Нада делать математические функции через разложения в ряды. Нарыл в интернети код на j2me. arcsin: private double Marcsin(double x0){ double x=x0; if (x0<0){x=-x0;}
C++ Производный класс. Перегрузка << (cout). При инициализации массива указателей базового класса при вызове cout производный класс не отображается, отображается базовый. Без указателей все в порядке. Подскажите пожалуйста почему. Вот пример кода: bor.h #include <iostream> class Port { private: char * brand; // название подробнее

Показать сообщение отдельно
lemegeton
 Аватар для lemegeton
2909 / 1338 / 133
Регистрация: 29.11.2010
Сообщений: 2,720
19.01.2012, 10:34     Найти сумму элементов массива, расположенных до 13 элемента
Цитата Сообщение от megasilver Посмотреть сообщение
Помогите пожалуйста... Очень надо.. Эти три задачи решают мою дальнейшую жизнь...
Картина маслом:
Темная комната. Стол, стул, компьютер. Неяркий свет монитора озаряет испуганного студиозуса на стуле. За ним виднеется фигура человека в черном который направляет не менее черный пистолет с глушителем на затылок студиозуса. На лице киллера застыла презрительная гримаса, он как-бы говорит студиозусу: "Заставь их написать тебе код, или ты покойник". Похожий случай, видимо, произошел со студиозусом при выборе факультета.

Первые две.
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
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
99
100
101
102
103
104
105
106
107
108
109
110
111
112
113
114
115
116
117
118
119
120
121
122
123
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <cmath>
 
float *fillRandom(float *array, size_t size, int min, int max, int divisor = 10) {
  min *= 10;
  max *= 10;
  for (size_t i = 0; i < size; ++i)
    array[i] = (rand() % (max - min + 1) + min) / static_cast<float>(divisor);
  return array;
}
 
float *printArray(float *array, size_t size) {
  for (size_t i = 0; i < size; ++i)
    std::cout << array[i] << " ";
  std::cout << std::endl;
  return array;
}
 
int floatCompare(float a, float b, float epsilon = 0.0001) {
  if (fabs(a - b) < epsilon)
    return 0;
  if (a < b) return -1;
  return 1;
}
 
bool floatInRange(float value, float a, float b) {
  return (floatCompare(value, a) != -1 && floatCompare(value, b) != 1);
}
 
float max(float *array, size_t size) {
  float max = array[0];
  for (size_t i = 0; i < size; ++i)
    if (array[i] > max)
      max = array[i];
  return max;
}
 
float partialSum(float *array, size_t size, size_t limit) {
  float sum = 0.;
  for (size_t i = 0; i < size && i < limit; ++i)
    sum += array[i];
  return sum;
}
 
float *removeRange(float *array, size_t size, float a, float b) {
  size_t i = 0, j = 0;
  for (; i < size; ++i)
    if (!floatInRange(fabs(array[i]), a, b))
      array[j++] = array[i];
  while (j < size)
    array[j++] = 0.;
  return array;
}
 
void taskOne() {
  size_t size = 20; // вводите с клавиатуры самостоятельно, мне лень
  float *array = fillRandom(new float[size], size, -10, 10);
  printArray(array, size);
  std::cout << "Max element is " << max(array, size) << std::endl;
  std::cout << "Sum till 13'th element is " << partialSum(array, size, 13) <<
    std::endl;
  float a = rand() % (50) / 10.; // вводите с клавиатуры самостоятельно, мне лень
  float b = (50 + rand() % (50)) / 10.; // вводите с клавиатуры самостоятельно, мне лень
  std::cout << "Removing range from " << a << " to " << b <<
    " inclusive." << std::endl;
  printArray(removeRange(array, size, a, b), size);
  delete [] array;
}
 
size_t indexOfMax(float *array, size_t size) {
  size_t max = 0;
  for (size_t i = 1; i < size; ++i)
    if (array[i] > array[max])
      max = i;
  return max;
}
 
float multiplication(float *array, size_t size, size_t begin) {
  float result = array[begin];
  while (++begin < size)
    result *= array[begin];
  return result;
}
 
void taskTwo() {
  size_t size = 20; // вводите с клавиатуры самостоятельно, мне лень
  float *array = fillRandom(new float[size], size, -10, 10);
  printArray(array, size);
  float c = (rand() % 110 - 50) / 10.; // вводите с клавиатуры самостоятельно, мне лень
 
  std::cout << "Array elements more than " << c << std::endl;
  for (size_t i = 0; i < size; ++i)
    if (floatCompare(array[i], c) == 1)
      std::cout << array[i] << " ";
  std::cout << std::endl;
 
  size_t max = indexOfMax(array, size);
  std::cout << "Index of max element is " << max <<
    ", multiplied elements after max: " << multiplication(array, size, max) <<
    std::endl;
 
  size_t i = 0, j = size - 1;
  while (i < j) {
    while (array[i] < 0 && i < j) ++i;
    while (array[j] >= 0 && i < j) --j;
    float tmp = array[i];
    array[i] = array[j];
    array[j] = tmp;
  }
  printArray(array, size);
 
  delete [] array;
}
 
int main(int argc, char *argv[]) {
  srand(time(0));
  std::cout << "Task one." << std::endl;
  taskOne();
  std::cout << std::endl << "Task two." << std::endl;
  taskTwo();
}


Третья.
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
#include <cstdlib>
#include <ctime>
#include <iostream>
#include <iomanip>
 
int random(int i) {
  return rand() % (10 * i + 50);
}
 
int minInColumn(int **matrix, int height, int column) {
  int minValue = matrix[0][column];
  for (int i = 1; i < height; ++i)
    if (minValue > matrix[i][column])
      minValue = matrix[i][column];
  return minValue;
}
 
int main(int argc, char *argv[]) {
  srand(time(0));
  int numberOfCities = 6;
  int numberOfCandidates = 5;
  int variantNumber = 10; // вот это значение надо задать самому
  
  std::cout << "Candidate: ";
  for (int i = 0; i < numberOfCandidates; ++i)
    std::cout << std::setw(5) << i + 1;
  std::cout << std::endl;
 
  int **votes = new int*[numberOfCities];
  for (int i = 0; i < numberOfCities; ++i) {
    votes[i] = new int[numberOfCandidates];
    std::cout << "City # " << std::setw(2) << i + 1 << ": ";
    for (int j = 0; j < numberOfCandidates; ++j)
      std::cout << std::setw(5) << (votes[i][j] = random(variantNumber));
    std::cout << std::endl;
  }
 
  for (int i = 0; i < numberOfCandidates; ++i) {
    int minimum = minInColumn(votes, numberOfCities, i);
    std::cout << "Minimum " << std::setw(4) << minimum <<
      " for candidate " << i + 1 << " in cities: ";
    for (int j = 0; j < numberOfCities; ++j)
      if (votes[j][i] == minimum)
        std::cout << std::setw(2) << j + 1;
    std::cout << std::endl;
  }
 
  for (int i = 0; i < numberOfCities; ++i)
    delete [] votes[i];
  delete [] votes;
  return 0;
}
 
Текущее время: 21:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru