我写了一个小的ruby应用程序,这是一个anagram搜索器.这是学习红宝石,但我想把它放在网上供个人使用.我对Rails有一些经验,很多人都推荐过Sinatra.我也没关系,但我找不到有关如何使用文本文件而不是数据库的任何信息.
应用程序非常简单,对单词列表的文本文件进行验证,然后查找所有字谜.我一直认为这应该很简单,但是我坚持将该文本文件导入Rails(如果我选择那样的话,那就是Sinatra).在Rails项目中,我将文本文件放在lib目录中.
不幸的是,即使Rails中的路径看起来是正确的,我也会收到错误:
no such file to load -- /Users/court/Sites/cvtest/lib/english.txt
Run Code Online (Sandbox Code Playgroud)
(cvtest是rails项目的名称)
这是代码.它本身很好用:
file_path = '/Users/court/Sites/anagram/dictionary/english.txt'
input_string = gets.chomp
# validate input to list
if File.foreach(file_path) {|x| break x if x.chomp == input_string}
#break down the word
word = input_string.split(//).sort
# match word
anagrams = IO.readlines(file_path).partition{
|line| line.strip!
(line.size == word.size && line.split(//).sort == word)
}[0]
#list all words except the original
anagrams.each{ |matched_word| puts matched_word unless matched_word == input_string }
#display error if
else
puts "This …Run Code Online (Sandbox Code Playgroud) 我在介绍C类,我遇到数据输入问题.我正在练习子程序,我的代码看起来是正确的,但程序中的一个问题由于某种原因被绕过,我无法弄清楚.
1)程序读入ISBN书号作为10个单独的字符(检查)
2)程序读入书的价格(支票)
3)该课程读取班级中的学生人数(检查)
4)该程序要求天气这本书是较新版本或旧版本(不工作!!)
5)该程序要求天气书是必需的或建议的(检查)
我正在使用char来解决有关新旧问题的问题,以及我们为了利用迄今为止所学到的知识而提出要求或建议的问题.
我无法理解为什么其中一个问题被绕过了.
这是我的输出:
Enter ISBN: 1231231231
Enter list price per copy: 54.99
Enter expected class enrollment: 45
Enter N for new edition or O for Older edition:
Enter R for Required or S for Suggested: R
ISBN: 1-23-123123-1
List Price: 54.99
Expected enrollment: 45
Edition, New or Old:
Importance, Required or Suggested: R
Run Code Online (Sandbox Code Playgroud)
如您所见,第四个问题的scanf将被忽略.这是我到目前为止编写的代码.任何帮助是极大的赞赏.
谢谢.
#include <stdio.h>
#define WHOLESALE 80
void getInput(char* a, char* b, char* c, char* d, char* e, …Run Code Online (Sandbox Code Playgroud)