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

Заполнение массива случайными числами, сумма цифр которых меньше 7 - C++

Восстановить пароль Регистрация
Другие темы раздела
C++ Решение двух задач http://www.cyberforum.ru/cpp-beginners/thread1032291.html
Здравствуйте. Помогите в решении задач с использованием switch. 3.Дано целое число к (1 < к <365). Определить, каким днем недели (по¬недельником, вторником,..., субботой или воскресеньем) является к-н день невисокосного года, в котором 1 января: а) четверг; 4.Дата некоторого дня характеризуется двумя натуральными числами: т (порядковый номер месяца) и п (число). По заданным п и т определить:...
C++ Двумерный массив Помогите пожалуйста!! 1.Дана матрица А(nxn). Написать программу, которая меняет к-ю и m-ю строки матрицы, а затем транспонирует матрицу. 2.В матрице А(nxn) найти максимальный и минимальный элементы. Указать их разность, а также строки и столбцы, на пересечении которых они находятся. http://www.cyberforum.ru/cpp-beginners/thread1032290.html
Чем отличаются динамические массивы от статических? C++
Вот цитата: Статические массивы как и другие статические типы данных это объекты размер которых известен на этапе компиляции. То есть до выполнения кода, когда программа запрашивает память у операционной системы она может выделить память в области данных, - по младшим адресам сегмента программы. Такие массивы существуют всё время жизни программы. Размер их неизменен. Данные в них изменять...
C++ написанием программ
:-|Помогите с написанием 3 програмы. 1. Вычислить сумму 5 элементов геометрической прогрессии, что уменьшается: начальное значение - 81 шаг - 3. (с помощью циклов) 2 Найти произведение второго и четвертого элементов, больше 3 (масивом.) 3.Знайты и вывести на экран индексы элементов массива, которые больше 1.
C++ Наследование http://www.cyberforum.ru/cpp-beginners/thread1032281.html
У меня есть базовый класс в котором есть protected: int a; в конструкторе я ей присваивают 0. Затем в методе базового класса я к этой переменной +3. Далее у меня есть производный класс который наследует базовый и в одном методе производного класса я вывожу эту переменную базового класса но она все время = 0. Как сделать так чтобы когда я эту переменную вывожу через метод производного класса ее...
C++ Поиск вектора, минимального по длине Даны m векторов х1 = (х11, х21, ...,хn1), ..., xm = (x1m, x2m, ...,xnm). Написать программу поиска вектора минимального по длине. Помогите решить, пожалуйста. Вообще ничего не шарю в программирование, а зачет нужен)) подробнее

Показать сообщение отдельно
Ярославна
0 / 0 / 0
Регистрация: 07.02.2012
Сообщений: 10
07.12.2013, 19:59     Заполнение массива случайными числами, сумма цифр которых меньше 7
Ярославна
Используя генератор случайных чисел, заполнить массив из 20 элементов целочисленными значениями в диапазоне [11, 39], сумма цифр которых меньше 7.
Прототип пользовательской функции:
int genprint(int*, const int, const int, const int);
параметры функции: массив, число элементов массива, левая и правая границы интервала случайных чисел, верхняя граница суммы чисел. Функция возвращает общее число сгенерированных значений, которое потребовалось для заполнения всего массива числами.

*) вывод получаемых значений происходит в функции main(); значения элементов массива выводятся в две строки по 10 элементов в каждой в след виде:
- первые 10 элементов: <значения>
- вторые 10 элементов: <значения>
(выводимые значения аккуратно выравниваются; ширина поля вывода равняется 4).
- число сгенерированных значений = <значение>


Ярославна
// 7.12.cpp : main project file.

#include "stdafx.h"
#include <iostream>
#include <cstdlib>
#include <ctime>
#include <iomanip>
using namespace std;

int genprint(int *, const int, const int, const int, const int);

int main()
{
setlocale(LC_ALL,"russian");
srand (time(0));

const int arrsize = 20;
int mass[arrsize];
int left = 11, rigth = 39, high=7;
int chislo;

chislo=genprint(mass, arrsize,left,rigth, high);
cout«"Вывод массива : \n";
cout«"Первые десять значений: ";
for (int i=0; i<(arrsize/2); i++)
cout«setw(4)«mass[i];
cout«'\n';

cout«"Вторые десять значений: ";
for(int i=arrsize/2; i<arrsize; i++)
cout«setw(4)«mass[i];
cout«'\n'«"число сгенерированных значений = <"«chislo«"> \n";
system("pause");
return 0;
}

int genprint( int * arr, const int kol, const int lb, const int rb, const int hb) // что означают следующие строки?
{

int x;
int i=0, counter = 0;

while ( i<kol)
{
x=lb + rand()%(rb-lb+1);
counter++;
if ((x % 10)+(x/10)<7)
{
arr[i] = x;
i++;
}
}

return counter;
}

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