Форум программистов, компьютерный форум, киберфорум
Ruby
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
Рейтинг 5.00/7: Рейтинг темы: голосов - 7, средняя оценка - 5.00
0 / 0 / 0
Регистрация: 26.11.2012
Сообщений: 3

Записать в файл информацию

26.11.2012, 19:42. Показов 1481. Ответов 2
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Записать в файл информацию о 1000 студентах вуза: "фамилия", "пол", "возраст", "курс". Написать программу, которая вводит эту информацию в файл и печатает все мужские и женские фамилии, которые встречаются по одному разу, и указывает пол, воз-раст и курс.

Прошу помощи, так как опыта в программировании на Ruby нет
0
cpp_developer
Эксперт
20123 / 5690 / 1417
Регистрация: 09.04.2010
Сообщений: 22,546
Блог
26.11.2012, 19:42
Ответы с готовыми решениями:

В первый файл записать информацию о жильцах дома, во второй - информацию о квартирах
Здравствуйте! Помогите пожалуйста. найти ошибку в программе! Необходимо написать два файла, в первый информацию о жильца дома( фио,номер...

Задание по Visual c++ 2013, Нужно создать файл, записать в него информацию, а затем по другой кнопке считать информацию из файла
Вот код записи в файл: { UpdateData(TRUE); F.open(L"dat1.txt", std::ios::out); // F - файловая переменная p.god = p_god; //...

Записать в типизированный файл информацию
Здравствуйте, помогите плз написать программу на паскале Записать в типизированный файл информацию об ассортименте канцелярских товаров....

2
 Аватар для arni
914 / 879 / 62
Регистрация: 06.01.2010
Сообщений: 2,367
Записей в блоге: 6
26.11.2012, 20:09
У вас уже есть файл с 1000 записей заданного формата? Поручить это на форуме кому-то сделать едва ли удастся.
0
Эксперт С++
 Аватар для Nameless One
5828 / 3479 / 358
Регистрация: 08.02.2010
Сообщений: 7,448
27.11.2012, 06:29
Для генерации имен использовался gem faker. Его нужно будет установить отдельно, либо переделать генерацию имен.

Ruby
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
# -*- coding: utf-8 -*-
#!/usr/bin/env ruby
 
require 'faker'
require 'optparse'
require 'ostruct'
 
module Options
  VERSION = [0, 1]
 
  def self.parse(args)
    options = OpenStruct.new num_samples: 1000, generate: false
 
    opts = OptionParser.new do |op|
      op.version = VERSION
      op.banner = "Usage: #{op.program_name} [OPTION] FILE"
      op.separator """Display unique students listed in FILE. If `--generate' switch is given,
write sample students to FILE instead.
 
"""
 
      op.on("-n", "--num-samples NUMBER", Integer,
         "Number of samples to generate (default 1000)",
         "Ignored unless `--generate' is given") do |num|
        options.num_samples = num
      end
 
      op.on("--generate", "Generate sample file rather then read it") do
        options.generate = true
      end
 
      op.on_tail("-h", "--help", "Show this message and exit") do
        puts opts
        exit
      end
 
      op.on_tail("-v", "--version", "Show version information and exit") do
        puts op.version.join('.')
        exit
      end
    end
    opts.parse! args
 
    raise "Missing filename (use `--help' for help)" unless args.size == 1
 
    options.file = args.first
    options
  end
end
 
module Students
  GENDER = ["male", "female"]
  AGE = (17..70).to_a
  COURSE = (1..5).to_a
  UNIQUE_RATIO = 0.8
 
  def self.generate(num_samples)
    num_unique_names = (UNIQUE_RATIO * num_samples).to_i
    unique_names = Array.new(num_unique_names).collect { Faker::Name.last_name }
    Array.new(num_samples) do
      "#{unique_names.sample} #{GENDER.sample} #{AGE.sample} #{COURSE.sample}"
    end
  end
 
  def self.unique(file)
    file.readlines.uniq { |s| s.split.first }
  end
end
 
if $0 == __FILE__
  begin
    options = Options.parse ARGV
 
    if options.generate
      File.open(options.file, 'w') do |f|
        f.puts Students.generate(options.num_samples)
      end
    else
      File.open(options.file, "r") do |f|
        Students.unique(f).each do |s|
          printf "%-30s%-10s%-5s%-3s\n", *s.split
        end
      end
    end
  rescue StandardError => err
    abort err.to_s
  end
end
Пример:
Code
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
~/samples/ruby $ ./students.rb --generate students.list --num-samples 20
~/samples/ruby $ cat students.list 
Klocko male 55 5
Maggio male 43 2
Kuhlman male 40 3
Runte male 45 5
Bergnaum female 31 1
Mohr male 52 5
Bernhard male 23 5
Jaskolski male 38 1
Runte male 47 1
Jaskolski female 54 3
Maggio female 55 4
O'Kon female 19 3
Reynolds male 63 1
Bechtelar male 49 1
Spencer male 40 1
Reynolds male 46 4
O'Kon male 49 3
Maggio female 22 5
Bergnaum male 42 5
Runte female 46 1
~/samples/ruby $ ./students.rb students.list 
Klocko                        male      55   5  
Maggio                        male      43   2  
Kuhlman                       male      40   3  
Runte                         male      45   5  
Bergnaum                      female    31   1  
Mohr                          male      52   5  
Bernhard                      male      23   5  
Jaskolski                     male      38   1  
O'Kon                         female    19   3  
Reynolds                      male      63   1  
Bechtelar                     male      49   1  
Spencer                       male      40   1  
~/samples/ruby $
Цитата Сообщение от Sharist Посмотреть сообщение
и печатает все мужские и женские фамилии, которые встречаются по одному разу
Вот тут не понял: мужские и женские фамилии считаются отдельно или вместе?
1
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
raxper
Эксперт
30234 / 6612 / 1498
Регистрация: 28.12.2010
Сообщений: 21,154
Блог
27.11.2012, 06:29
Помогаю со студенческими работами здесь

В файл записать информацию о книгах
В файл записать информацию о книгах университетской библиотеки: автор, название книги, год издания, цена. Напечатать список книг, изданных...

Записать информацию об ОС из реестра в файл
привет, друзья - товарищи, надо записать значение реестра в файл. В частности информацию об ОС. Что не так в коде? HANDLE...

В файл записать информацию об абитуриентах
в файл записать информацию об абитуриентах, поступающих в универ: фамилия, имя, отчество, домашний адрес, номер телефона, изучаемый язык,...

Записать в файл информацию о студенте
Народ пожалуйста напишите как инфу что я вывожу про студентов записать в файл. Вот код программы: program proga1; uses crt; type...

Как записать информацию в doc-файл
Создаю файл: StreamWriter sw; DitectoryInfo di = new DitectoryInfo("Papka"); di.Create(); sw =...


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

Или воспользуйтесь поиском по форуму:
3
Ответ Создать тему
Новые блоги и статьи
моя боль
iceja 24.01.2026
Выложила интерполяцию кубическими сплайнами www. iceja. net REST сервисы временно не работают, только через Web. Написала за 56 рабочих часов этот сайт с нуля. При помощи perplexity. ai PRO , при. . .
Модель сукцессии микоризы
anaschu 24.01.2026
Решили писать научную статью с неким РОманом
http://iceja.net/ математические сервисы
iceja 20.01.2026
Обновила свой сайт http:/ / iceja. net/ , приделала Fast Fourier Transform экстраполяцию сигналов. Однако предсказывает далеко не каждый сигнал (см ограничения http:/ / iceja. net/ fourier/ docs ). Также. . .
http://iceja.net/ сервер решения полиномов
iceja 18.01.2026
Выкатила http:/ / iceja. net/ сервер решения полиномов (находит действительные корни полиномов методом Штурма). На сайте документация по API, но скажу прямо VPS слабенький и 200 000 полиномов. . .
Расчёт переходных процессов в цепи постоянного тока
igorrr37 16.01.2026
/ * Дана цепь(не выше 3-го порядка) постоянного тока с элементами R, L, C, k(ключ), U, E, J. Программа находит переходные токи и напряжения на элементах схемы классическим методом(1 и 2 з-ны. . .
Восстановить юзерскрипты Greasemonkey из бэкапа браузера
damix 15.01.2026
Если восстановить из бэкапа профиль Firefox после переустановки винды, то список юзерскриптов в Greasemonkey будет пустым. Но восстановить их можно так. Для этого понадобится консольная утилита. . .
Сукцессия микоризы: основная теория в виде двух уравнений.
anaschu 11.01.2026
https:/ / rutube. ru/ video/ 7a537f578d808e67a3c6fd818a44a5c4/
WordPad для Windows 11
Jel 10.01.2026
WordPad для Windows 11 — это приложение, которое восстанавливает классический текстовый редактор WordPad в операционной системе Windows 11. После того как Microsoft исключила WordPad из. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru