1 / 1 / 0
Регистрация: 15.11.2012
Сообщений: 51
1

Записать 1000 случайных чисел в диапазоне

12.02.2013, 08:00. Показов 8100. Ответов 6
Метки нет (Все метки)

. с [-100;100] в файл a.txt. В файл оtr.txt вывести отрицательные значения, в файл plus.txt положительные значения, в файл even.txt все нечетные числа.
__________________
Помощь в написании контрольных, курсовых и дипломных работ, диссертаций здесь
0
Programming
Эксперт
94731 / 64177 / 26122
Регистрация: 12.04.2006
Сообщений: 116,782
12.02.2013, 08:00
Ответы с готовыми решениями:

Сгенерировать 4000 целых случайных чисел в диапазоне от -3000 до 7000 и записать их в текстовый файл
Помогите плиз!!! Заранее спасибо!!!!!! №1. Сгенерировать 4000 целых случайных чисел в диапазоне...

Записать 1000 случайных чисел в диапазоне (-100, 100)
Записать 1000 случайных чисел в диапазоне (-100,100) в файл а.txt . В файл otr.txt вывести...

Вывод в двухмерный массив случайных чисел в диапазоне 0-1000
Написать программу на языках С, которая должна находить максимальный элемент в двухмерном массиве ...

Записать в текстовый файл 20 случайных чисел в заданном диапазоне
. Напишите программу, которая создает текстовый файл и записывает в него 20 случайных чисел,...

6
-3 / 0 / 0
Регистрация: 16.01.2013
Сообщений: 42
12.02.2013, 08:20 2
через for делаем цикл 1000
внутри цикла берем Randomize и умножаем на 200
затем отнимаем от каждого полученного числа 100
результат получаем числа от -100 до 100
проводим сравнение и от результата заносим данные в файлы.
0
Кодинг - это искусство...
64 / 64 / 42
Регистрация: 07.01.2013
Сообщений: 156
12.02.2013, 08:46 3
Цитата Сообщение от paserge Посмотреть сообщение
внутри цикла берем Randomize и умножаем на 200
Это же глупость... Как можно процедуру на что-то умножить?
Процедура Randomize нужна для того, чтобы при использовании ФУНКЦИИ Random() получались более или менее случайные числа
0
-3 / 0 / 0
Регистрация: 16.01.2013
Сообщений: 42
12.02.2013, 09:23 4
random это числа от 0 до 1, а нам надо получить числа от -100 до 100
поэтому и написал умножить на 200 и отнять 100
0
Кодинг - это искусство...
64 / 64 / 42
Регистрация: 07.01.2013
Сообщений: 156
12.02.2013, 09:31 5
Pascal
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
var
i,p:integer;
A,otr,plus,even:text;
Begin
  Assign(A,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\A.txt');
  Assign(otr,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\otr.txt');
  Assign(plus,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\plus.txt');
  Assign(even,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\even.txt');
  rewrite(A);
  for i:=1 to 1000 do
    begin
      Randomize;
      Writeln(A,Random(201)-100);
    end;
  close(A);
  reset(A);
  Rewrite(otr);
  Rewrite(plus);
  Rewrite(even);
  While not Eof(A) do
    begin
      Readln(A,p);
      if p<0 then
        writeln(otr,p);
      if p>=0 then
        writeln(plus,p);
      if (p)mod(2)<>0 then
        writeln(even,p);
    end;
  Close(A);
  Close(otr);
  Close(plus);
  Close(even);
End.
Вот Если число равняется нулю то оно попадает в файл plus.txt Если надо наоборот, то просто измените:
Pascal
1
2
3
4
      if p<0 then
        writeln(otr,p);
      if p>=0 then
        writeln(plus,p);
на:
Pascal
1
2
3
4
      if p<=0 then
        writeln(otr,p);
      if p>0 then
        writeln(plus,p);
Добавлено через 49 секунд
Добавлено через 6 минут
Цитата Сообщение от paserge Посмотреть сообщение
поэтому и написал умножить на 200 и отнять 100
Хорошо, пусть Random - это случайное число 0 или 1 Тогда представьте себе, с каком случае Random*200 будет равняться 200? В лучшем случае в половине случаев Так как один раз функция будет равна 1 и следовательно 1*200=200, но в другом случае функция будет равна 0 и из этого следует, что 0*200=0 Тогда при вычислении 0*200-100 у нас получится примерно 500 чисел 100 А это не есть правильно
0
-3 / 0 / 0
Регистрация: 16.01.2013
Сообщений: 42
12.02.2013, 13:05 6
Цитата Сообщение от Sckrejjet Посмотреть сообщение
Pascal
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
var
i,p:integer;
A,otr,plus,even:text;
Begin
  Assign(A,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\A.txt');
  Assign(otr,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\otr.txt');
  Assign(plus,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\plus.txt');
  Assign(even,'ПОЛНЫЙ ПУТЬ К ФАЙЛУ\even.txt');
  rewrite(A);
  for i:=1 to 1000 do
    begin
      Randomize;
      Writeln(A,Random(201)-100);
    end;
  close(A);
  reset(A);
  Rewrite(otr);
  Rewrite(plus);
  Rewrite(even);
  While not Eof(A) do
    begin
      Readln(A,p);
      if p<0 then
        writeln(otr,p);
      if p>=0 then
        writeln(plus,p);
      if (p)mod(2)<>0 then
        writeln(even,p);
    end;
  Close(A);
  Close(otr);
  Close(plus);
  Close(even);
End.
Вот Если число равняется нулю то оно попадает в файл plus.txt Если надо наоборот, то просто измените:
Pascal
1
2
3
4
      if p<0 then
        writeln(otr,p);
      if p>=0 then
        writeln(plus,p);
на:
Pascal
1
2
3
4
      if p<=0 then
        writeln(otr,p);
      if p>0 then
        writeln(plus,p);
Добавлено через 49 секунд
Добавлено через 6 минут


Хорошо, пусть Random - это случайное число 0 или 1 Тогда представьте себе, с каком случае Random*200 будет равняться 200? В лучшем случае в половине случаев Так как один раз функция будет равна 1 и следовательно 1*200=200, но в другом случае функция будет равна 0 и из этого следует, что 0*200=0 Тогда при вычислении 0*200-100 у нас получится примерно 500 чисел 100 А это не есть правильно
я не писал что рандом это 0 или 1 а писал числа от 0 до 1 и они не интовые а с плавающей точкой, а это дробные числа

Добавлено через 7 минут
вы в коде написали Writeln(A,Random(201)-100); все верно, разве я не про это писал,
может выразился неточно то сорь за мой французский
0
Кодинг - это искусство...
64 / 64 / 42
Регистрация: 07.01.2013
Сообщений: 156
12.02.2013, 13:36 7
А, извиняюсь, этот момент я упустил
Однако много суеты с проверкой числа типа Real

Добавлено через 4 минуты
Цитата Сообщение от paserge Посмотреть сообщение
вы в коде написали Writeln(A,Random(201)-100); все верно, разве я не про это писал,
может выразился неточно то сорь за мой французский
В моем варианте получаются только целочисленные числа Random(201) - это любое число в диапазоне от 0 до 200 А далее я просто вычитаю 100, чтобы получать и отрицательные значения

В вашем варианте тоже получаются значения в диапазоне от -100 до 100, но уже типа Real, то бишь вещественные Это смотрится красивее, но вот только мороки с проверкой нечетности таких чисел много Поэтому я предпочел остановиться на целочисленных
0
IT_Exp
Эксперт
87844 / 49110 / 22898
Регистрация: 17.06.2006
Сообщений: 92,604
12.02.2013, 13:36
Помогаю со студенческими работами здесь

Посчитать количество восьмеричных чисел в диапазоне от 10 до 1000
1.посчитать количество восьмеричных чисел в диапазоне от 10 до 1000 2.выбрать цифры равные модулю...

Типизированный файл с 1000 случайных чисел
Ребят, нужно написать процедуру для создания типизированного файла, котоырй содержит 1000 случайных...

С помощью датчика случайных чисел получить 30 целых чисел, лежащих в диапазоне от 0 до 5
Здраствуйте! С помощью датчика случайных чисел получить 30 целых чисел, лежащих в диапазоне от 0 до...

Сгенерировать 10 случайных чисел в диапазоне от -10 до 10. Вывести на экран количество положительных чисел
Помогите написать программку в Паскале, что сгенерирует 10 случайных чисел в диапазоне от -10 до...


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
7
Ответ Создать тему
Опции темы

КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2022, CyberForum.ru