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

проще и короче - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Работы в векторами. http://www.cyberforum.ru/cpp-beginners/thread514849.html
Читая в книге тему про вектора наткнулся на такой предложение: "Также существует функция push_front() для занесения элементов в начале вектора, однако векторами она не поддерживается" Поэтому при выполнении задания, которое требовало выведение строк в обратном порядке, я сделал так: #include <string> #include <iostream> #include <fstream> #include <vector> using namespace std; int...
C++ printf и cout У меня возник вопрос, что луче еспользовать в C++, printf/scanf или cout/cin ? Что работает быстрее? Есть такой фрагмент кода int i; for (i = -10; i <= 10; i ++) { printf ("%+4.2i |%6.3f\n", i, 1./(i*i + .5)); http://www.cyberforum.ru/cpp-beginners/thread514831.html
удаленный рабочий стол C++
народ,подскажите кто знает! хочу написать прогу на подобии удаленный рабочий стол. чтобы на своем мониторе видеть монитор компа к которому подключился с возможностью выполнять необходимые действия.но не знаю с чего начать,подскажите куда копать,что почитать? Добавлено через 23 часа 2 минуты никто не сталкивался с такой задачей?
Написать программу, выясняющую количество четных цифр во введенном пользователем числе. C++
Написать программу, выясняющую количество четных цифр во введенном пользователем числе.
C++ Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N-1, у которых произведение цифр совпадает с произведением цифр данного числа http://www.cyberforum.ru/cpp-beginners/thread514805.html
Помогите, пожалуйста!!! А то у меня не получается( Написал программу, когда ввожу число 32 как в примере выводит только 16, а 6 и 23 не выводит(( Дано натуральное число N. Найти и вывести все числа в интервале от 1 до N–1, у которых произведение всех цифр совпадает с произведением цифр данного числа. Если таких чисел нет, то вывести слово «нет». Пример. N = 32. Числа: 6, 16, 23. Вот сама...
C++ Реализация стека на массиве и динамическом распределении памяти всем привет, дано такое задание: Используя стек, решить следующую задачу. Напечатать каждое слово текстового файла Т в обратном порядке. Стек реализовать в двух вариантах: на массиве и с использованием динамического распределения памяти. я пока пытаюсь сделать на массиве #include <stdio.h> #include <conio.h> #include <stdlib.h> #include <iostream> #include <string.h> подробнее

Показать сообщение отдельно
Vredinka_6
0 / 0 / 0
Регистрация: 05.02.2011
Сообщений: 32
09.03.2012, 14:18     проще и короче
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
#include <cstdlib>
#include <iostream>
#include <stdlib.h>
#include <math.h>
 
using namespace std;
 
/*
Динамическое выделение памяти, каждый пункт ф-ция, данные- через пар-ры, глобал.переменные - не допускаются.
В одномерном массиве, состоящем из n вещественных элементов, вычислить:
1) количество отриц. элементов массива;
2) сумму модулей элементов массива, расположенных после минимального по
   модулю элемента.
3) Заменить все отриц. элементы массива их квадратами.
4) Упорядочить элементы массива по возрастанию.
*/
 
#define n 10 // длина массива
 
// Заполнение массива случайными значениями
void MakeArray(double *X)
{
  for (int Index = 0; Index != n; Index++)
    X[Index] = (double)(rand() - rand()) / 0xfc;
}
 
// Подсчёт отрицательных элементов массива
unsigned GetNegativeCount(double *X)
{
  unsigned Count = 0;
  for (int Index = 0; Index != n; Index++)
    if (X[Index] < 0) Count++;
  return Count;
}
 
// Вычисление суммы модулей элементов массива,
// расположенных после минимального по модулю элемента.
double GetSum(double *X, unsigned *MinIndex)
{
  double Min = fabs(X[0]), Sum = 0.0;
  *MinIndex = 0;
 
  for (int Index = 1; Index != n; Index++)
    if (fabs(X[Index]) < Min)
    {
      Min = fabs(X[Index]);
      *MinIndex = Index;
    }
 
  for (int Index = 0; Index != *MinIndex; Index++)
    Sum += fabs(X[Index]);
 
  return Sum;
}
 
// Замена все отриц. элементы массива их квадратами.
void NegativeToSquare(double *X)
{
  for (int Index = 0; Index != n; Index++)
    if (X[Index] < 0)
      X[Index] *= X[Index];
}
 
// Сортировка по возрастанию
void Sort(double *X)
{
  double Temp;
 
  for (int Index1 = 0; Index1 != n; Index1++)
    for (int Index2 = Index1; Index2 != n; Index2++)
      if (X[Index1] > X[Index2])
      {
        Temp = X[Index1];
        X[Index1] = X[Index2];
        X[Index2] = Temp;
      }
}
 
// Вывод массива на консоль
void OutArray(double *X)
{
  for (int Index = 0; Index != n; Index++)
    printf("  %0.2f", X[Index]);
  printf("\n");
}
 
int main(int argc, char *argv[])
{
  double X[n]; // массив из n элементов
  double Sum;  // сумма модулей элементов массива,
               // расположенных после минимального по модулю элемента.
  unsigned MinIndex; // номер элемента, минимального по модулю
 
  MakeArray(X);
 
  printf("Source array:\n");
  OutArray(X);
 
  printf("\nNegative items: %d\n", GetNegativeCount(X));
 
  Sum = GetSum(X, &MinIndex);
  printf("\nSum of absolute values before absolute minimum (%0.2f): %0.2f\n", X[MinIndex], Sum);
  printf("\nAfter changes negative items to it's squares:\n");
  NegativeToSquare(X);
  OutArray(X);
 
  printf("\nArray after sorting:\n");
  Sort(X);
  OutArray(X);
 
  printf("\n\n");
  system("PAUSE");
  return EXIT_SUCCESS;
}
После регистрации реклама в сообщениях будет скрыта и будут доступны все возможности форума.
 
Текущее время: 18:16. Часовой пояс GMT +3.
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin® Version 3.8.9
Copyright ©2000 - 2016, vBulletin Solutions, Inc.
Рейтинг@Mail.ru