日々改善

今日の問題を明日に残さない!問題解決を図って行く様をリアルに描写していきます。経営コンサルの視点で物事を見ていきます。

チョロっ! オセロゲームのプログラミングできた✨

2024-08-25 | つれづれ
私の能登半島大震災が発生する直前の今年の目標が「プログラミングを習得する」でした。


ガハハハハ。。。
やりました!
作りました!
オセロゲーム♪
もちろん市販されているようなものではなく
超初心者が作った初歩中の初歩のものです。

ちなみに、出来上がって、ゲームを動かしたのが下記のような感じです。

Invalid input. Please enter two numbers separated by a space.
0 1 2 3 4 5 6 7
0
1
2
3   W B
4   B W
5
6
7
Current player: Black
Enter row and column (e.g. '3 4'): 3 2
0  1  2  3  4  5  6  7
0
1
2
3    B B B
4       B W
5
6
7
Current player: White
Enter row and column (e.g. '3 4'):

上記のプログラムを動かすためのコードが下記のプログラムです。

class Othello:
def __init__(self):
self.board = [[' ' for _ in range(8)] for _ in range(8)]
self.board[3][3] = self.board[4][4] = 'W'
self.board[3][4] = self.board[4][3] = 'B'
self.current_player = 'B'


def print_board(self):
print(' 0 1 2 3 4 5 6 7')
for i, row in enumerate(self.board):
print(i, ' '.join(row))


def is_valid_move(self, row, col):
if self.board[row][col] != ' ':
return False


for dr in [-1, 0, 1]:
for dc in [-1, 0, 1]:
if dr == 0 and dc == 0:
continue
if self.would_flip(row, col, dr, dc):
return True
return False


def would_flip(self, row, col, dr, dc):
r, c = row + dr, col + dc
if not (0 <= r < 8 and 0 <= c < 8) or self.board[r][c] == self.current_player:
return False
while 0 <= r < 8 and 0 <= c < 8 and self.board[r][c] != ' ':
if self.board[r][c] == self.current_player:
return True
r, c = r + dr, c + dc
return False


def make_move(self, row, col):
if not self.is_valid_move(row, col):
return False


self.board[row][col] = self.current_player
for dr in [-1, 0, 1]:
for dc in [-1, 0, 1]:
if dr == 0 and dc == 0:
continue
self.flip(row, col, dr, dc)


self.current_player = 'W' if self.current_player == 'B' else 'B'
return True


def flip(self, row, col, dr, dc):
if not self.would_flip(row, col, dr, dc):
return
r, c = row + dr, col + dc
while self.board[r][c] != self.current_player:
self.board[r][c] = self.current_player
r, c = r + dr, c + dc


def has_valid_move(self):
for row in range(8):
for col in range(8):
if self.is_valid_move(row, col):
return True
return False


def play(self):
while True:
self.print_board()
if not self.has_valid_move():
self.current_player = 'W' if self.current_player == 'B' else 'B'
if not self.has_valid_move():
break
print(f"No valid moves for {('Black' if self.current_player == 'B' else 'White')}. Skipping turn.")
continue


print(f"Current player: {('Black' if self.current_player == 'B' else 'White')}")
try:
row, col = map(int, input("Enter row and column (e.g. '3 4'): ").split())
if self.make_move(row, col):
pass
else:
print("Invalid move. Try again.")
except ValueError:
print("Invalid input. Please enter two numbers separated by a space.")


self.print_board()
black_count = sum(row.count('B') for row in self.board)
white_count = sum(row.count('W') for row in self.board)
print(f"Game over! Black: {black_count}, White: {white_count}")
if black_count > white_count:
print("Black wins!")
elif white_count > black_count:
print("White wins!")
else:
print("It's a tie!")


if __name__ == "__main__":
game = Othello()
game.play()

やった!
プログラマーになれるかも♪←なれんなれん!

今回のオセロゲームは
プログラム言語にPython
製作支援(いや、メイン?)にChatGPT
プログラム作成は、Claudeです。

ちなみに、私が出したプロンプトは
Claudeに「オセロゲームを作って下さい」
ChatGPTに「Pythonの使い方を教えて」
「修正が有ったら直してください」
「ゲームが動かないので原因を探し、解決策を教えてください」
「遊び方を教えてください」とわがまま放題を言って
オセロゲームが無事動きました。

初歩中の初歩のプログラミングですが
まったくコードも何もわからないですが
自分で作った(正確にはClaudeに作って貰った)初のプログラミングということで
今年の抱負のひとつはクリアしたということにしましょうヽ(^。^)ノ
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする

ビジネスを加速させる4大AI:ChatGPT、Gemini、Claude、Perplexityの活用法

2024-08-25 | つれづれ
AIの発展が目覚まし過ぎます。
日々発展するAIに追いつくことができません。

ということで
今日は、ビジネスのどの分野でそれぞれ有名なAIを活用すれば良いか
 Claude 3.5 Sonnetに聞いてみました。

今日は、ビジネスシーンで注目を集めている4つの主要なAIツール、ChatGPT、Gemini、Claude、Perplexityについて、それぞれの特徴と最適な活用分野をご紹介します。
  1. ChatGPT:万能の対話型アシスタント
ChatGPTは、OpenAIが開発した汎用的な対話型AIです。その特徴は、幅広いトピックに対応できる柔軟性と自然な会話能力にあります。
ビジネスでの活用分野:
  • 24時間対応のカスタマーサポートチャットボット
  • ブログ記事やSNS投稿などのコンテンツ作成
  • 新製品開発やマーケティング戦略のアイデア出し
  1. Gemini:Google謹製のマルチタレントAI
Geminiは、Googleが開発したマルチモーダルAIです。テキスト、画像、音声などを統合的に処理できる点が大きな特徴です。
ビジネスでの活用分野:
  • 画像認識技術を活用したマーケティング分析
  • 音声認識による会議の自動文字起こしと要約作成
  • 複数のデータソースを組み合わせた総合的な分析とレポート作成
 ※マルチモーダル:複数の形式や手段を組み合わせて高度な判断ができるため、一般的なAIでは対応できないようなタスク処理が可能 
  1. Claude:分析と倫理のスペシャリスト
Claudeは、高度な分析能力と倫理的配慮を兼ね備えたAIです。複雑な問題に対する洞察力が強みです。
ビジネスでの活用分野:
  • データに基づいた戦略的意思決定のサポート
  • 複雑なビジネスデータの分析と解釈
  • 人事や企業のリスク管理など、倫理的配慮が必要な分野での助言
  1. Perplexity:最新情報のエキスパート
Perplexityは、最新の情報源を活用した検索と回答生成が特徴のAIツールです。
ビジネスでの活用分野:
  • リアルタイムの市場調査と競合分析
  • 業界トレンドの分析と予測
  • 最新の情報に基づいた迅速な意思決定支援
これらのAIツールは、それぞれの強みを活かして使い分けることで、ビジネスの効率化と革新に大きく貢献します。
ただし、AIの出力は常に人間による確認と判断が必要です。
特に重要な意思決定を行う際には、AIを補助ツールとして活用しつつ、最終的には人間の専門知識と経験に基づいて判断することが重要です。
AIツールを上手に活用することで、ビジネスの競争力を高め、新たな可能性を切り開くことができるでしょう。
皆さんのビジネスにも、これらのAIツールを取り入れてみてはいかがでしょうか?

えっ!?
私??
もちろん全部使って、最適なビジネスを構築して参ります(^^♪
コメント
  • X
  • Facebookでシェアする
  • はてなブックマークに追加する
  • LINEでシェアする