Serviceを読んで理解し、同意したものとみなします。スタック・オーバーフローはプログラマーとプログラミングに熱心な人のためのQ&Aサイトです。260件11プログラミング初学者です。「記憶域xに100が、記憶域yに3が格納されている。解を求め、記憶域zに格納せよ。」という参考書の問題がどうしても解けずにいます・・・。その参考書が滅茶苦茶でして、答えの通りにプログラムを書いてもエラーが出てしまい、非常にモヤモヤしています。一度正しいソースコードを見て、理解を深めたいです。回答よろしくお願いいたします。14:32なるほど、よくわかりました...。票5横着編/を使うなと言うことであれば、別名のdivを使えばいいだけです。上ではあまりにも横着なので/を実装しましょう。zこの実装には問題があります。除数が0の場合と、被除数と除数のどちらかまたは両方が負の場合を考慮していないと言うことです。除数が0の場合は/と同じくZeroDivisionError例外を発生することにします。負の場合ですが、剰余がある場合の負の整数の除法は割りきれる場合を除き一意に決まりません。剰余が必ず正になるのか、除数または被除数と同一の符号になるかで商が変わるからであり、どのように実装するかはプログラミング言語によって異なります。ここでは、Rubyの動作と同じ、つまり、除数と同一符号になるようにします。z負の計算はちょっと怪しいですので、間違いがあったらごめんなさい。実装方法は一つではありません。+や-、*等を使って求める方法もありますので、自分で考えてみましょう。上の方法は速くありません。計算量はO(m/n)ですので、mが大きい場合はかなりの時間がかかってしまうからです。小学校で習う割り算の仕方を応用すればもっと高速な処理ができるはずですし、さらにビット演算を用いた方法もあるようです。高速な実装については、きっと、誰かが回答してくれるかと思います。|回答スタック・オーバーフローに参加してくれて、ありがとうございます!質問の回答を共有してください。回答を説明し、自分の検討結果も共有してください。意見を述べること(意見を述べるなら、参照リソース、自分の経験で意見をサポートしてください)さらにサポートが必要な場合このヘルプを参考してください。“回答を投稿”をクリックすることで利用規約、プライバシーポリシー、及びクッキーポリシーに同意したものとみなされます。タグが付いた他の質問を参照するか、自分で質問をする。質問のフィードこのRSSフィードを購読するには、このURLをコピーしてRSSリーダーに貼り付けてください。