プログラミングのお題スレ Part21

■ このスレッドは過去ログ倉庫に格納されています
2022/11/13(日) 19:00:36.84ID:ZCYlhUwL
プログラミングのお題スレです。

【出題と回答例】
1 名前:デフォルトの名無しさん
  お題:お題本文

2 名前:デフォルトの名無しさん
  >>1 使用言語
  回答本文
  結果がある場合はそれも

【ソースコードが長くなったら】 (オンラインでコードを実行できる)
https://ideone.com/
http://codepad.org/
http://compileonline.com/
http://rextester.com/runcode
https://runnable.com/
https://code.hackerearth.com/
http://melpon.org/wandbox
https://paiza.io/

宿題は宿題スレがあるのでそちらへ。

※前スレ
プログラミングのお題スレ Part20
https://mevius.5ch.net/test/read.cgi/tech/1624028577/
2022/12/15(木) 01:21:36.94ID:nl5DhriG
>>260
> 赤っぽいの定義は?

赤RGB(255, 0, 0)に近く、出荷に適したトマトの色とする。
262デフォルトの名無しさん
垢版 |
2022/12/15(木) 01:26:05.58ID:47Ejv2xg
sum=[0,0,0]
for(i=0;i<data.length;i++)
for(j=0;j<data[i].length;j++)
for(k=0;k<3;k++)
sum[k]+=data[i][j][k]

for(k=0;k<3;k++)
sum[k]/=data.length*data[0].length

rgb2hsv(sum).H
2022/12/15(木) 01:53:25.08ID:nl5DhriG
適正なトマトの色の範囲は、おそらくRGBやHSVなどの色空間上の範囲として表現するのが適切かも知れない。

それから全ピクセルの平均を求めるのは時間の掛かる処理に思える。
264デフォルトの名無しさん
垢版 |
2022/12/15(木) 01:56:34.74ID:7eXwHgCG
で赤っぽいの定義は?
2022/12/15(木) 01:59:58.02ID:NC87g1Wm
これはっ緑健の完熟トマト…
2022/12/15(木) 02:04:32.67ID:nl5DhriG
赤っぽいトマトの定義。

HSV色空間において、Hが-45度~+45度の範囲で、かつSが70%以上、かつVが50%以上(テキトーに決めてます)。しらんけど。
2022/12/15(木) 02:14:50.86ID:nl5DhriG
画像の解像度はVGA。
処理は0.5秒以内。
2022/12/15(木) 08:07:47.54ID:YuqRQs18
>>261
>>266
アホは出題するな
2022/12/15(木) 10:06:23.94ID:D8+s3udF
おいおい、そうじゃないだろ
アホな出題者を優良な出題者に育てる
それもお前らの仕事だぞ
2022/12/15(木) 12:37:06.80ID:uzoxWFqF
>>269
お前にまかせた
2022/12/15(木) 15:00:21.08ID:wgTVfCwy
>>268
どこがアホなのか指摘して下さいね。
2022/12/15(木) 16:38:57.45ID:ylmQ78W0
処理時間とかいうなら動作環境と画像のフォーマットくらい示しとけよアホ
2022/12/15(木) 17:37:06.49ID:uzoxWFqF
>>271
仕様を書けないところ
2022/12/15(木) 17:39:04.49ID:uzoxWFqF
仕様作成のお題じゃなくて
プログラミングのお題なんだから
仕様はちゃんと紛れが無いように書いて
回答も用意しておけ
275デフォルトの名無しさん
垢版 |
2022/12/15(木) 22:12:02.63ID:47Ejv2xg
どうせ仕様書いたところでやらないんだろうな
文句言いたいだけ
黙ってれば良いのに
2022/12/15(木) 22:31:31.40ID:XntkKj9A
でも明らかに誰もやらない問題だろうなってのはあるじゃん
2022/12/16(金) 00:39:45.94ID:jyj3FCsV
if文使うお題は人気ないよな
278デフォルトの名無しさん
垢版 |
2022/12/18(日) 01:20:58.32ID:JbTYiIQv
>>247
Kotlin script

import java.net.*

println(java.net.URL(java.net.URL(args[0]), args[1]))
279デフォルトの名無しさん
垢版 |
2022/12/18(日) 01:22:33.33ID:JbTYiIQv
あ、ごめん。最初の import 要らない。
2022/12/25(日) 18:38:10.18ID:X2xjup2e
お題: 在庫管理。

最初は在庫ゼロ。
何個か在庫変動の内容が一行ごとに入力される。
「商品「A」が3個入荷しました」
「商品「A」を2個消費しました」
「商品「B」を5個入荷しました」
。。。

最後に在庫状況を報告する。
「商品「A」が1個、商品「B」が5個あります」

在庫変動は、入荷か消費のどちらか。
商品名は任意の文字列。
2022/12/25(日) 19:01:23.15ID:X2xjup2e
お題: 感染者数の集計。

FAXで日本語の表として感染者のリストが某所から大量に送信されてくる。
それをOCRで読み取り、エクセルファイルにした後でPDFに変換した後、集計して印刷してFAXで報道機関に送信するプログラム。
2022/12/31(土) 11:24:19.30ID:zpGLZKZe
#include <stdio.h>

int main(void)
{
int a, b, c;
int x, y, z;
printf("a = %zu\n",sizeof(unsigned short));
printf("b = %zu\n",sizeof(unsigned int));
printf("c = %zu\n",sizeof(unsigned long));

printf("x = %zu\n",sizeof(short));
printf("y = %zu\n",sizeof(int));
printf("z = %zu\n",sizeof(long));
if (a == x)
printf("等しい\n");
else
printf("等しくない\n");
if (b == y)
printf("等しい\n");
else
printf("等しくない\n");
if (c == z)
printf("等しい\n");
else
printf("等しくない\n");

return 0;
}

上記プログラムで実行結果がすべて「等しくない」で出力されるんですが、なぜなのかわかりません。等価演算子の使い方が間違っているのでしょうか?
2022/12/31(土) 11:45:03.82ID:Xd9+Lz33
なんでだろ~
2022/12/31(土) 12:31:19.53ID:zpGLZKZe
282ですけど、原因がわかりました。直接sizeを比較してないからでした。

if (sizeof(unsigned short int) == sizeof(short))

とすれば比較になります。
2023/01/01(日) 04:14:40.02ID:k0DSm/Wv
>>282
a, b, c, x, y, z に何も代入しておらず全て不定値のままで比較をおこなっているため。
つまり「等しくない」0しか出力されなかった理由は偶然。たまたま自動変数がそのような結果になる値になっていただけ。
2023/01/01(日) 07:54:11.35ID:3UYI3pmj
実行環境で、warning=警告 だらけになりますよね
初学者は、先ずそこを気にしないといけません
2023/01/02(月) 23:05:26.01ID:QgUCruY4
昔、ircで外人が質問してきた
c言語のエラーが取れないと
コンパイル結果を見たらwarningだらけだった
俺は「warningを取れ」と言ってやった
そいつは「それは大した問題じゃない」と言ってきた
2023/01/03(火) 08:20:25.77ID:NMKmf8kd
>>261
赤っぽいの定義=赤RGB(255, 0, 0)に近く、出荷に適したトマトの色 っておい!
2023/01/03(火) 09:39:10.10ID:UBjvnfn5
バカは出題禁止にしたいけど
バカは自分がバカな事がわからないんだよな
2023/01/04(水) 02:17:42.12ID:Ur39ORao
ChatGPT
Q: 出荷に適したトマトの色をRGB値で教えて
A: トマトの色は、その種類や栽培方法、成熟度によって異なります。一般的に、完全に成熟したトマトは、赤い色をしています。ですから、RGB値としては、赤(R)が255、緑(G)が0、青(B)が0になると思われます。ただし、それは概略的な指針であり、実際の色は、異なる品種や栽培条件によって異なるかもしれません。

255,0,0が出荷に適したトマトだそうだぞ
2023/01/04(水) 14:26:13.02ID:n+FvG6ug
具体的な仕様がない案件をやってみるのもプログラミングの冒険だと思うが。

緑がかったジャガイモ、芽の出たジャガイモを取り除くとか、不発のポップコーンを取り除くとか。
2023/01/04(水) 14:31:53.59ID:fkh/W6sK
仕様を考えるお題は他のスレでやって
2023/01/04(水) 19:28:40.37ID:n+FvG6ug
お題: UUID文字列を出力せよ。
294デフォルトの名無しさん
垢版 |
2023/01/06(金) 05:08:07.01ID:M8Yj8K4Q
>>293
Kotlin script

println(java.util.UUID.randomUUID())
295デフォルトの名無しさん
垢版 |
2023/01/06(金) 05:17:11.97ID:M8Yj8K4Q
>>293
bash

uuidgen

正にそのままの名前のコマンドがあるのでそれを実行するだけ。
2023/01/06(金) 13:50:28.95ID:comZLRpx
お題: 「お金」を回転させよ。
2023/01/06(金) 17:43:57.43ID:XVNiIKyd
お題:「蟻人間」を削除せよ。
2023/01/06(金) 18:20:34.96ID:faoYgN4s
>>296
C++/Win32
https://ideone.com/WjFMbj

>>297
C++
#include <cstdio>
int main(void)
{
std::remove("蟻人間");
return 0;
}
2023/01/06(金) 23:37:06.38ID:fhx1KoPh
お題:
キーと値のリストがあります。
そのうちキーが0のものを除いてグループ化した結果を出力せよ。
ただし0のものについてもそれぞれの値をリストとすること。

[[0, "a"], [0, "b"], [0, "c"], [1, "d"], [2, "e"], [2, "f"], [3, "g"]]
→ [[0, ["a"]], [0, ["b"]], [0, ["c"]], [1, ["d"]], [2, ["e", "f"]], [3, ["g"]]]
300デフォルトの名無しさん
垢版 |
2023/01/08(日) 23:11:39.41ID:H/llE4PY
お題
数列が入力されます
最も大きな値をHighestに変換してください
最も小さな値をLowestに変換してください
最も大きくもなく最も小さくもない値をMiddleに変換してください


7
5.1
4.8
5.5
6.3
5.8
6.1
5.8
4.7
5.6
7.1

Middle
Middle
Middle
Middle
Middle
Middle
Middle
Middle
Lowest
Middle
Highest
301デフォルトの名無しさん
垢版 |
2023/01/08(日) 23:19:00.38ID:H/llE4PY
お題
数列が入力されます
連続する3つの数字(A, B, C)のうち
A <= B <= C
この条件を満たす(A, B, C)を出力してください


9.1
8.1
8.8
12.1
10.4
10.3
10.1
8.5
11.5
10.6

(8.1, 8.8, 12.1)
302デフォルトの名無しさん
垢版 |
2023/01/08(日) 23:59:01.77ID:H/llE4PY
>>299
Java
https://paiza.io/projects/9n5DS2q8jrFM5ZF7SQEJzA
303デフォルトの名無しさん
垢版 |
2023/01/10(火) 01:54:23.75ID:BgZKYyvJ
>>299
Kotlin

ライブラリ使ってグループ分けしてから0のやつだけ一つづつに作り直しているのでやってることは >>302 のJavaのやつとほぼ同じだと思う。
入出力に凝った所が違うがそこは肝心な所ではない。

https://paiza.io/projects/XKaj8JlMZrlxh3J0bveRlg
304デフォルトの名無しさん
垢版 |
2023/01/10(火) 02:09:52.84ID:BgZKYyvJ
>>300
Kotlin

ほとんど何も考えず min(), max() 使っただけ。

https://paiza.io/projects/n5yP4U4wM5YAQgLr54582Q
305デフォルトの名無しさん
垢版 |
2023/01/10(火) 02:24:54.71ID:BgZKYyvJ
>>301
Kotlin

https://paiza.io/projects/3TZOS2qweI2IAXFR0eXAAA
2023/01/10(火) 23:39:37.16ID:PQFcH8F6
お題: グラフ理論において、あるグラフGの頂点が頂点番号の集合として、Gの辺が頂点番号の順序対の集合として与えられる。ケーニヒスベルクの橋の問題を解け。
307デフォルトの名無しさん
垢版 |
2023/01/11(水) 10:43:19.48ID:8ImpuJOv
よくわかんないなあ
調べるの面倒臭いなあ
俺はパスする
308デフォルトの名無しさん
垢版 |
2023/01/11(水) 13:41:08.95ID:6xJiw1N1
int v[] = {1, 2, 3, 4, 5, 6, 7};
int p[][2] = {{1, 2}, {2, 3}, {1, 4}, {4, 5}, {2, 6}, {4, 6}, {3, 7}, {5, 7}, {6, 7}};
あとはまかせた
2023/01/11(水) 16:39:17.08ID:GAGx1xu5
 1/11 向け問題

[お題] 1位 + 11位 + 111位 + ...

整数 F, T が与えられる。F以上 T以下の異なる素数を 11個 選び和をとる。
全通りは、NCR(素数の個数, 11) 種類ある。

全通りを, 以下の優先順位で並べ、一意の順位をつけたと考える。
・優先1 和が多い順
・優先2 選んだ11素数を昇順に並べた辞書順

順位の数字が'1'のみであらわせる順位の和を合計し、出力する。
(1位, 11位, 111位, 1111位, ...と存在する順位まで)

制約) 0< F < T <= 4000 かつ T - F <= 1400
参考) この制約下で素数の最大個数は222個。最大順位は64bit整数におさまる

1) 2 39 --> 361
 素数は12個あり、12C11で12通りある、1位は195で11位は166 合計して361
2) 123 231 --> 12600
 素数20個 20C11 = 167960, [1位,11位, ... , 111111位] と6個分の和を加算
3) 1111 2222 --> ?
4) 2 1402 --> 243741
5) 2600 4000 --> ?
2023/01/11(水) 16:59:19.37ID:LrbNabxf
なんか趣旨が理解出来なくてすべってる人が多いのな
プログラミングの観点から何か興味を引くようなお題じゃないとこの板じゃ反応ないと思うよ
2023/01/11(水) 17:49:08.53ID:lx9Ag9Yr
>>306
頂点番号の対だけで情報足りてるじゃん
2023/01/11(水) 17:52:38.47ID:lx9Ag9Yr
>>309
問題が無駄に複雑
シンプルにしようよ
313デフォルトの名無しさん
垢版 |
2023/01/11(水) 19:20:10.27ID:rEwL+Sf1
>>311
は?
2023/01/11(水) 20:03:43.15ID:2InRpmeN
一筆書き可能の判定法の有向グラフ版ってこと?
すべての頂点について、そこに向かう辺とそこから出る辺が共に偶数であるかどうかと同値かな
2023/01/11(水) 20:08:58.20ID:2InRpmeN
>>311
情報与えるんじゃなくて定義の話じゃね
2023/01/11(水) 20:09:36.17ID:2InRpmeN
前半は
2023/01/11(水) 20:10:29.64ID:2InRpmeN
まぁ定義も情報か
2023/01/11(水) 20:27:59.86ID:Ew0xxktJ
>>313
与えられる情報が冗長だって言ってるわけだけど
そんなに難しい事を言ったつもりはなかった

>>308でいうとvは不要、pだけで良い

>>314
無向グラフと思う
連結性も必要
2023/01/11(水) 20:31:06.96ID:Ew0xxktJ
蟻の出題はただの思いつきでまともなお題になってないから時間をかける価値は無い
2023/01/11(水) 20:32:04.74ID:2InRpmeN
>>308はそいつが勝手に入力扱いしただけやろ。
2023/01/11(水) 20:33:14.80ID:2InRpmeN
無効でも順序対である必要あるん?
2023/01/11(水) 20:37:29.73ID:Yn2pvCxf
ケーニヒスベルクの橋の問題だから無向と思ったが
確かに順序対と書いてある

真意は蟻しかわからない
2023/01/11(水) 20:38:27.83ID:Yn2pvCxf
いずれにしろ>>314ではダメ
2023/01/11(水) 20:39:54.20ID:2InRpmeN
何でダメなん?
2023/01/11(水) 20:40:33.42ID:2InRpmeN
ダメだね
2023/01/11(水) 20:41:43.31ID:2InRpmeN
いや、これは偶数じゃないか
グルグル回るだけのものは奇数で成り立つな
2023/01/11(水) 20:42:38.38ID:2InRpmeN
入と出が同数、ならどうだろう
2023/01/11(水) 20:45:29.02ID:jpaYiZfD
>>322
有向に決まってんだろjk
往生際が悪いぞ
329デフォルトの名無しさん
垢版 |
2023/01/11(水) 20:48:29.09ID:tUKEbXZD
>>311
は??
2023/01/11(水) 21:01:38.01ID:IvsI+U0J
>>327
勘じゃなくてちゃんと考えてから書きなさい
2023/01/11(水) 21:06:32.39ID:IvsI+U0J
連結
全ての点で入と出の差が1以下
入と出が同数じゃない点が2個以下
332デフォルトの名無しさん
垢版 |
2023/01/11(水) 21:56:38.66ID:2InRpmeN
お前さんには言われたくなかったねぇ
問題文もよく読んでなかったし思い込みで入力扱いして不要な情報だとかなんだとかしていたわけだからね。
333デフォルトの名無しさん
垢版 |
2023/01/11(水) 22:09:56.53ID:NOiNk1Lr
>全ての点で入と出の差が1以下

つまり次数が奇数の場合もありということか。

有向グラフになったらオイラーグラフの「全ての頂点の次数が偶数」よりも条件が緩くなるのかね。
そんなことあるかね

それとも準オイラーグラフも許されているのか?
ケーニヒスベルクの橋はオイラーグラフだからてっきりそれはないかと。
334デフォルトの名無しさん
垢版 |
2023/01/11(水) 22:13:53.37ID:8g/qDi9U
すまない、橋の問題はオイラーグラフではなく閉路と言いたかった。
335デフォルトの名無しさん
垢版 |
2023/01/11(水) 22:17:34.30ID:xV7vDRTi
あぁ、出題文の問題は一筆書きだけではなくて一筆書きで元の場所に戻るんだ
2023/01/11(水) 22:21:52.27ID:smM4RS1r

アイツほんと問題文読んでないんだね
ドヤ顔で指摘しちゃって恥ずかしいたらありゃしない
2023/01/11(水) 22:31:14.68ID:IvsI+U0J
ケーニヒスベルクの橋って閉路なのか
ただの知識問題でプログラミング全く関係ないけど
2023/01/11(水) 22:37:09.41ID:IvsI+U0J
>>332
不要だろ
2023/01/11(水) 22:39:09.52ID:zWDWCyHE
恥ゲージMAXやね
2023/01/11(水) 22:46:10.73ID:IvsI+U0J
(単独の点を除いて)連結
全ての点の出入りが同じ

>>331
単独の点を除かなきゃいけなかった
2023/01/11(水) 22:50:28.23ID:IvsI+U0J
ああ、やっとわかった
>>313>>311の意味を間違って解釈してたのか
2023/01/11(水) 22:58:19.00ID:SA6KxbU7
( T_T)\(^-^ )ADHDって生きづらいよね
343デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:07:37.17ID:2InRpmeN
違うんだよなぁ。
>>313の意図は知らんけど俺が言ってるのは頂点リストをプログラムの入力にするとは明記されてないということ。

単に「グラフの頂点番号の順序対のリストを与える」と言ったときに頂点番号ってなんだ?とならないようにその説明として「頂点に番号を付けたもの」という文言をつけてるだけの可能性もあるだろうということ。

まぁ、分からないか
2023/01/11(水) 23:12:57.97ID:IvsI+U0J
「AがBとして、CがDとして与えられる」
両方与えられるという文にみえる
2023/01/11(水) 23:14:31.62ID:IvsI+U0J
そうじゃない解釈も確かにある
346デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:14:42.49ID:2InRpmeN
「AはBとして、CはBのD」って意味じゃない?ってこと
2023/01/11(水) 23:15:33.99ID:IvsI+U0J
>>308>>344の解釈
348デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:15:34.98ID:2InRpmeN
いや、BはAとしてCはBのDか

まぁどうでもいいけどね。
349デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:16:10.44ID:2InRpmeN
そそ、お前さんは先入観とそのレスに惑われてたってこと。
2023/01/11(水) 23:18:58.91ID:IvsI+U0J
>>311に対して「そうだね」で終わる話なのに
2023/01/11(水) 23:19:23.16ID:IvsI+U0J
変に絡まれた
352デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:19:59.30ID:2InRpmeN
いやいや、まるで無駄な入力付けるなよって言ってるかのようじゃん…
まだあんまりわかってないかぁ
そもそも入力とは言ってないんだよね
353デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:21:32.80ID:SA6KxbU7
あんぽんターン(^O^☆♪
2023/01/11(水) 23:21:51.74ID:IvsI+U0J
結局プログラミング以外の話になるのが蟻のお題
355デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:23:33.77ID:qgXhIU8i
【悲報】アスペクトガイジ、先入観でドヤ顔で指摘するも開き直る
2023/01/11(水) 23:23:52.74ID:IvsI+U0J
ケーニヒスベルクの橋の問題なんだから無向に決まってんだろ
これも1個の解釈
357デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:25:37.67ID:hvXrP5Qh
決まってないので指摘するのは間違いよ~
そもそも順序対に気付いていなかったのでそうだと思ってしまったのは仕方ないねぇ
2023/01/11(水) 23:29:01.68ID:IvsI+U0J
単発君、まだ勘違いしてるのか
アホ
359デフォルトの名無しさん
垢版 |
2023/01/11(水) 23:32:24.06ID:iLygO0TL
効いてる♪
効いてる♪
効いてる♪
効いてる♪
イライラしちゃって♪顔真っ赤♪
(妖怪ウォッチのリズムで)
2023/01/12(木) 00:27:34.37ID:2cbw5EZQ
お題: オブジェクト指向でお絵描きプログラム。

各図形は、描画に必要な座標などを保持する、オブジェクト指向に準じたクラスとして定義する。描画対象のキャンバスは画面、画像、テキスト文字列などを好きに選んでも構わない。

キャンバスでは長方形Rectangle、円Circleの2種類の図形をメモリーの許す限り複数個、追加ができ、また削除できる。色が指定できる場合は塗りつぶしは黄色とし、線の色は青色とする。線の太さは1ピクセル以上とする。

図形を描画する関数は多態性を持ったdraw関数とする。

各図形に図形の位置をずらすmove関数(平行移動)を追加せよ。

複数の図形をグループ化した図形GroupShapeを追加し、GroupShapeにもdraw関数、move関数を追加せよ。

サイズ80x25の空白キャンバスに対して以下の操作を行え。

1. 長方形(8, 10)~(10, 15)を追加。
2. 半径5の円(10, 10)を追加。
3. 1と2をグループ化して+(2, 7)だけmove関数でずらす。
4. キャンバスをdraw関数で描画する。
■ このスレッドは過去ログ倉庫に格納されています
5ちゃんねるの広告が気に入らない場合は、こちらをクリックしてください。

ニューススポーツなんでも実況