Модераторы: Poseidon
  

Поиск:

Ответ в темуСоздание новой темы Создание опроса
> [С++] Одномерный массив, заполнить случайными числами 
V
    Опции темы
Baltazar5000
Дата 13.2.2007, 16:57 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 6.12.2006

Репутация: нет
Всего: нет



[C++] Создать одномерный массив h[32], заполнить его, используя функцию random(), целыми числами в диапазоне от 20 до 90. Всем ответившим заранее большое спасибо.
PM MAIL   Вверх
Rockie
Дата 13.2.2007, 17:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: 13
Всего: 31



Baltazar5000, see msdn:
rand




--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
Rodman
Дата 13.2.2007, 17:59 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


CIO
****


Профиль
Группа: Участник
Сообщений: 6144
Регистрация: 7.5.2006
Где: Ukraine ⇛ Kyiv ci ty

Репутация: 26
Всего: 122



Код

#include <stdlib.h>
#include <conio.h>

int main()
{
randomize(); //Запускаем режим сл. чисел, без этого каждый раз при запуске числа будут одни и теже

int  Arr[32];

for (unsigned int i=0; i < 32; i++)
    Arr[i]  =  random(70)+20;    // Сл. числа от 0 до 99
       
for (unsigned int i=0; i < 32; i++)
    cout << Arr[i] << '\t';
cout << endl;

getch();
return 0;
}

PM MAIL WWW Skype GTalk YIM MSN   Вверх
Rockie
Дата 13.2.2007, 18:15 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Эксперт
***


Профиль
Группа: Завсегдатай
Сообщений: 1143
Регистрация: 23.4.2006

Репутация: 13
Всего: 31



Rodman, 
Код

#include <vcl.h>

вырезал? smile 

Тогда нужно еще 
Код

using namespace std;

после инклудов




--------------------
Чтобы иметь большой гардероб - надо иметь большой гардероб.
PM   Вверх
Baltazar5000
Дата 13.2.2007, 22:44 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 6.12.2006

Репутация: нет
Всего: нет



Что-то не пашет...
PM MAIL   Вверх
vinter
Дата 13.2.2007, 22:54 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 1
Всего: 56



Код

#include <cstdlib>
#include <iostream>

using std::cout;
using std::cin;

int MyRandom(int a, int b) ;
 
int main()
{
    int h[32];
    srand((unsigned )time(NULL));
    for(int i = 0; i < 32; i++)
    {
        h[i] = MyRandom(20, 90);
        cout << h[i] << "\n";
    }
    cin.get();
}

int MyRandom(int a, int b)  
{
    return a + rand() % (b-a);
}

не проверял, но вроде все правильно


Это сообщение отредактировал(а) vinter - 13.2.2007, 22:55


--------------------
Мой блог
PM MAIL WWW   Вверх
Baltazar5000
Дата 13.2.2007, 23:18 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 6.12.2006

Репутация: нет
Всего: нет



vinter не катит. Даже после исправления ошибки #include <cstdlib> на 
#include <stdlib.h> Помойму завтра я попал... smile 



PM MAIL   Вверх
vinter
Дата 14.2.2007, 00:24 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Explorer
****


Профиль
Группа: Завсегдатай
Сообщений: 2735
Регистрация: 1.4.2006
Где: Н.Новгород

Репутация: 1
Всего: 56



Цитата
Даже после исправления ошибки #include <cstdlib> на 


это не ошибка.
что не катит?? какие ошибки??

поменяй верхушку 
Код
#include <cstdlib>
#include <iostream>
using std::cout;
using std::cin;
на
Код

#include <stdlib.h>
#include <iostream.h>
#include <time.h>

а вообще не плохо было бы указывать компилятор свой..



--------------------
Мой блог
PM MAIL WWW   Вверх
V.A.KeRneL
Дата 14.2.2007, 09:10 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vadim A. Kazantsev
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 3.12.2006
Где: Moscow, Russia

Репутация: 7
Всего: 14



Rodman, я знаю, что Вы специалист по Pascal/Delphi, а не по C/C++, поэтому считаю своим догом сказать, что в стандартной библиотеке C функции, которые Вы «обозвали» randomize() и random() (следуя паскалевскому именованию, очевидно), называются srand() и rand(), соответственно.

Baltazar5000, тебе на чистом C чтоли надо, а не на «Плюсе»? Тогда так бы и указывал в заголовке!

Код

#include <stdio.h>
#include <stdlib.h>
#include <time.h>

#define ARR_SIZE   32

int MyRandom(int a, int b);

int 
main(void) 
{ 
    int h[ARR_SIZE];  /* array */
    int i;  /* index, counter */
    
    srand((unsigned) time(NULL));
    
    for (i = 0; i < ARR_SIZE; ++i) { 
        h[i] = MyRandom(20, 90);
        printf("%d\n", h[i]);
    }
    
    return (0);
}

int 
MyRandom(int a, int b) 
{ 
    return (a + (rand()%(b - a)));
}



Это сообщение отредактировал(а) V.A.KeRneL - 14.2.2007, 09:17


--------------------
«C'est un pense-creux d'ici. C'est le meilleur et le plus irascible homme du monde...» © Ф.М. Достоевский, «Бесы»
---/)/)---(\.../)---(\(\
--(':'=)---(=';'=)---(=':')
(")(")..)-(").--.(")-(..(")(")

PM MAIL IM ICQ AOL YIM MSN   Вверх
Baltazar5000
Дата 15.2.2007, 22:36 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Шустрый
*


Профиль
Группа: Участник
Сообщений: 70
Регистрация: 6.12.2006

Репутация: нет
Всего: нет



Всем большое спасибо, но я сделал это сам. Вот так(так как требовали):

Создал свои библиотеки.

WIND.h - Окно
Код

Wind(int x1, int y1, int x2, int y2, int z1, int z2)
    {    // построение тени цветом z1
        window(x1, y1, x2, y2);textbackground(z1); clrscr();
        // построениеокна для вывода значений цветом z2
        window(x1 - 2, y1 - 1, x2 - 2, y2 - 1);textbackground(z2); clrscr();
        return 0;
    }


pr19_i.h - Инициализация
Код

void setrandom(int h[], int size)
{
    int i;
    for(i=0;i<size;i++)
    h[i] = random(70)+20;
}


pr19_v.h - вывод на экран
Код

void get_mas(int h[], int size)
    {
        int i;
        for(i = 0; i < size; i++)
        {
            if(i%9==0)
            printf("\n   ");
            printf("%7d", h[i]);
        }
        printf("\n\n");
    }


pr19_p.h - вывод в файл
Код

int fil_mas(int h[], int size)
{
    int i;
    char*ch="../dat/pr19.dat";
    FILE*f;
    if((f=fopen(ch,"w"))==NULL)
    {
        fprintf(stderr,"Ошибка! Не удается открыть файл..\n");
        return 1;
    }
for(i=0;i<size;i++)
{
    fprintf(f,"%d\n", h[i]);
}
fclose(f);
return 0;
}

pr19.cpp - А вот и само задание.
Код

#include<conio.h>
#include<iostream.h>
#include<stdlib.h>
#include<stdio.h>
// Подключение функций собственной библиотеки
#include"..\\h\\WIND.h"
#include"..\\h\\pr19_i.h" //Инициализация
#include"..\\h\\pr19_v.h" //Вывод на экран
#include"..\\h\\pr19_p.h" //Вывод в файл
int k;
int main()
{
    textmode(3);
    window(1,1,80,25);
    textattr(15 + (7 << 4));
    clrscr();
    Wind(1,1,80,25,0,9);
    Wind(15,3,65,6,8,3);
    gotoxy(12,2);
    cputs("Исходный массив");
    Wind(5,10,70,20,2,6);

    const int N=32;
    int h[N];randomize();

    k=32;
    setrandom(h,N);
    get_mas(h,N);
    fil_mas(h,N);


    getch();
    return 0;
}


PM MAIL   Вверх
V.A.KeRneL
  Дата 15.2.2007, 23:56 (ссылка) | (нет голосов) Загрузка ... Загрузка ... Быстрая цитата Цитата


Vadim A. Kazantsev
**


Профиль
Группа: Участник
Сообщений: 291
Регистрация: 3.12.2006
Где: Moscow, Russia

Репутация: 7
Всего: 14



Baltazar5000, сделал сам — молодец, заработал бонус для собственного моска. Но это ещё не всё, надо пометить топик как решённый, в дальнейшем поступать так со всеми своими темами и следовать правилам форума в полномобъёме! (см. верхушку страницы ^)


Это сообщение отредактировал(а) V.A.KeRneL - 15.2.2007, 23:57


--------------------
«C'est un pense-creux d'ici. C'est le meilleur et le plus irascible homme du monde...» © Ф.М. Достоевский, «Бесы»
---/)/)---(\.../)---(\(\
--(':'=)---(=';'=)---(=':')
(")(")..)-(").--.(")-(..(")(")

PM MAIL IM ICQ AOL YIM MSN   Вверх
  
Ответ в темуСоздание новой темы Создание опроса
Правила форума "Центр помощи"

ВНИМАНИЕ! Прежде чем создавать темы, или писать сообщения в данный раздел, ознакомьтесь, пожалуйста, с Правилами форума и конкретно этого раздела.
Несоблюдение правил может повлечь за собой самые строгие меры от закрытия/удаления темы до бана пользователя!


  • Название темы должно отражать её суть! (Не следует добавлять туда слова "помогите", "срочно" и т.п.)
  • При создании темы, первым делом в квадратных скобках укажите область, из которой исходит вопрос (язык, дисциплина, диплом). Пример: [C++].
  • В названии темы не нужно указывать происхождение задачи (например "школьная задача", "задача из учебника" и т.п.), не нужно указывать ее сложность ("простая задача", "легкий вопрос" и т.п.). Все это можно писать в тексте самой задачи.
  • Если Вы ошиблись при вводе названия темы, отправьте письмо любому из модераторов раздела (через личные сообщения или report).
  • Для подсветки кода пользуйтесь тегами [code][/code] (выделяйте код и нажимаете на кнопку "Код"). Не забывайте выбирать при этом соответствующий язык.
  • Помните: один топик - один вопрос!
  • В данном разделе запрещено поднимать темы, т.е. при отсутствии ответов на Ваш вопрос добавлять новые ответы к теме, тем самым поднимая тему на верх списка.
  • Если вы хотите, чтобы вашу проблему решили при помощи определенного алгоритма, то не забудьте описать его!
  • Если вопрос решён, то воспользуйтесь ссылкой "Пометить как решённый", которая находится под кнопками создания темы или специальным флажком при ответе.

Более подробно с правилами данного раздела Вы можете ознакомится в этой теме.

Если Вам помогли и атмосфера форума Вам понравилась, то заходите к нам чаще! С уважением, Poseidon, Rodman

 
0 Пользователей читают эту тему (0 Гостей и 0 Скрытых Пользователей)
0 Пользователей:
« Предыдущая тема | Центр помощи | Следующая тема »


 




[ Время генерации скрипта: 0.0959 ]   [ Использовано запросов: 22 ]   [ GZIP включён ]


Реклама на сайте     Информационное спонсорство

 
По вопросам размещения рекламы пишите на vladimir(sobaka)vingrad.ru
Отказ от ответственности     Powered by Invision Power Board(R) 1.3 © 2003  IPS, Inc.