ผมเริ่มให้ chatgpt เขียนโค้ด เมื่อแรกๆ ที่ chatgpt เริ่มเปิดตัว ทุกวันนี้ ผมก็ยังใช้แบบฟรีอยู่
เมื่อเดือนก่อนผมเริ่มมาใช้ gemini ควบคู่กับ chatgpt
พอเทียบๆกันดู ส่วนตัวพบว่า chatgpt ตอบสนองความต้องการได้มากกว่า ในด้านการเขียนโค้ดที่ละเอียด กระชับ และ ชัดเจน มากขึ้น
ส่วน gemini เน้น การให้ความรู้ ข้อมูล ส่วนโค้ด มักจะ สั้นๆ
ซึ่ง ผมไม่แน่ใจว่า ทั้งหมดเกิดจาดการเรียนรู้ของ chatgpt ในข้อมูลที่ผมป้อน มากกว่า gemini หรือ เป็นที่ AI ของแต่ละค่ายเอง
จาก
/*
ปริซึม
กว้าง =x
ยาว = y
สูง = h
พื้นที่หน้าตัดบน/ล่าง = xy
พื้นที่หน้าตัดซ้าย/ขวา = yh
พื้นที่หน้าตัดหน้า/หลัง = xh
พื้นที่ข้าง = 2xh+2yh=2h(x+y)
พื้นที่ทั้งหมด = 2xy+ (2x+2y)h
ปริมาตร = xyh
*/
ผมอยากเขียน C# ที่สามารถสร้างโจทย์ให้ครอบคลุม ทุกตัวแปร หรือ ทุกรูปแบบ
chatgpt
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้using System;
namespace PrismProblemGenerator
{
class PrismProblem
{
public double Width { get; set; }
public double Length { get; set; }
public double Height { get; set; }
public double CrossSectionalArea { get; set; }
public double LeftRightSectionalArea { get; set; }
public double FrontBackSectionalArea { get; set; }
public double LateralSurfaceArea { get; set; }
public double TotalSurfaceArea { get; set; }
public double Volume { get; set; }
public static Random random = new Random();
public static void GenerateProblem()
{
PrismProblem problem = new PrismProblem();
// Randomly choose which values to provide
bool isWidthGiven = random.Next(0, 2) == 1;
bool isLengthGiven = random.Next(0, 2) == 1;
bool isHeightGiven = random.Next(0, 2) == 1;
if (isWidthGiven)
problem.Width = random.Next(1, 10);
if (isLengthGiven)
problem.Length = random.Next(1, 10);
if (isHeightGiven)
problem.Height = random.Next(1, 10);
// Calculate the other values if enough variables are known
if (isWidthGiven && isLengthGiven)
problem.CrossSectionalArea = problem.Width * problem.Length;
if (isLengthGiven && isHeightGiven)
problem.LeftRightSectionalArea = problem.Length * problem.Height;
if (isWidthGiven && isHeightGiven)
problem.FrontBackSectionalArea = problem.Width * problem.Height;
if (isWidthGiven && isHeightGiven && isLengthGiven)
{
problem.LateralSurfaceArea = 2 * (problem.Width * problem.Height + problem.Length * problem.Height);
problem.TotalSurfaceArea = 2 * (problem.Width * problem.Length) + (2 * (problem.Width + problem.Length) * problem.Height);
problem.Volume = problem.Width * problem.Length * problem.Height;
}
DisplayProblem(problem, isWidthGiven, isLengthGiven, isHeightGiven);
}
public static void DisplayProblem(PrismProblem problem, bool isWidthGiven, bool isLengthGiven, bool isHeightGiven)
{
Console.WriteLine("โจทย์ปริซึม:");
if (isWidthGiven)
Console.WriteLine($"กว้าง = {problem.Width}");
else
Console.WriteLine("กว้าง = ?");
if (isLengthGiven)
Console.WriteLine($"ยาว = {problem.Length}");
else
Console.WriteLine("ยาว = ?");
if (isHeightGiven)
Console.WriteLine($"สูง = {problem.Height}");
else
Console.WriteLine("สูง = ?");
Console.WriteLine($"พื้นที่หน้าตัดบน/ล่าง = {problem.CrossSectionalArea}");
Console.WriteLine($"พื้นที่หน้าตัดซ้าย/ขวา = {problem.LeftRightSectionalArea}");
Console.WriteLine($"พื้นที่หน้าตัดหน้า/หลัง = {problem.FrontBackSectionalArea}");
Console.WriteLine($"พื้นที่ข้าง = {problem.LateralSurfaceArea}");
Console.WriteLine($"พื้นที่ทั้งหมด = {problem.TotalSurfaceArea}");
Console.WriteLine($"ปริมาตร = {problem.Volume}");
}
static void Main(string[] args)
{
GenerateProblem();
}
}
}
gemini
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้using System;
class PrismProblem
{
static void Main()
{
Random random = new Random();
// สุ่มประเภทของโจทย์ (1: หาพื้นที่ผิวทั้งหมด, 2: หาปริมาตร)
int problemType = random.Next(1, 3);
// สุ่มค่าตัวแปร
double x = random.Next(1, 11);
double y = random.Next(5, 16);
double h = random.Next(2, 9);
// สร้างข้อความโจทย์
string question = "";
if (problemType == 1)
{
question = $"ปริซึมมีฐานเป็นรูปสี่เหลี่ยมผืนผ้า กว้าง {x} หน่วย ยาว {y} หน่วย สูง {h} หน่วย จงหาพื้นที่ผิวทั้งหมด";
}
else
{
question = $"ปริซึมมีฐานเป็นรูปสี่เหลี่ยมผืนผ้า กว้าง {x} หน่วย ยาว {y} หน่วย สูง {h} หน่วย จงหาปริมาตร";
}
Console.WriteLine(question);
// รับคำตอบจากผู้ใช้
Console.Write("ตอบ: ");
double answer = Convert.ToDouble(Console.ReadLine());
// คำนวณคำตอบที่ถูกต้อง
double correctAnswer = problemType == 1 ? 2 * (x * y + x * h + y * h) : x * y * h;
// ตรวจสอบคำตอบ
if (Math.Abs(answer - correctAnswer) < 0.001)
{
Console.WriteLine("ถูกต้องครับ");
}
else
{
Console.WriteLine("ผิดครับ คำตอบที่ถูกต้องคือ {0}", correctAnswer);
}
}
}
มีใครใช้ AI เขียนโค้ดมั่งครับ มาเล่าหน่อยว่าเป็นยังไง
เมื่อเดือนก่อนผมเริ่มมาใช้ gemini ควบคู่กับ chatgpt
พอเทียบๆกันดู ส่วนตัวพบว่า chatgpt ตอบสนองความต้องการได้มากกว่า ในด้านการเขียนโค้ดที่ละเอียด กระชับ และ ชัดเจน มากขึ้น
ส่วน gemini เน้น การให้ความรู้ ข้อมูล ส่วนโค้ด มักจะ สั้นๆ
ซึ่ง ผมไม่แน่ใจว่า ทั้งหมดเกิดจาดการเรียนรู้ของ chatgpt ในข้อมูลที่ผมป้อน มากกว่า gemini หรือ เป็นที่ AI ของแต่ละค่ายเอง
จาก
/*
ปริซึม
กว้าง =x
ยาว = y
สูง = h
พื้นที่หน้าตัดบน/ล่าง = xy
พื้นที่หน้าตัดซ้าย/ขวา = yh
พื้นที่หน้าตัดหน้า/หลัง = xh
พื้นที่ข้าง = 2xh+2yh=2h(x+y)
พื้นที่ทั้งหมด = 2xy+ (2x+2y)h
ปริมาตร = xyh
*/
ผมอยากเขียน C# ที่สามารถสร้างโจทย์ให้ครอบคลุม ทุกตัวแปร หรือ ทุกรูปแบบ
chatgpt
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้
gemini
[Spoil] คลิกเพื่อดูข้อความที่ซ่อนไว้