ให้ค่าลอยตัวสองค่า ระยะภาพและระยะวัตถุจากเลนส์ งานคือการพิมพ์ความยาวโฟกัสของเลนส์
ทางยาวโฟกัสคืออะไร
ความยาวโฟกัสของระบบออพติคอลคือระยะห่างระหว่างจุดศูนย์กลางของเลนส์หรือกระจกโค้งกับการโฟกัส
มาทำความเข้าใจด้วยความช่วยเหลือของรูปด้านล่าง -
ในรูปด้านบน i คือวัตถุ และ F คือภาพของวัตถุที่ก่อตัวขึ้น และ f คือความยาวโฟกัสของภาพ
ดังนั้น ในการหาทางยาวโฟกัสของภาพจากเลนส์ สูตรคือ −
1F=1O+1I
โดยที่ F คือความยาวโฟกัส
O คือระยะทางทั้งหมดของเลนส์กับวัตถุ
I คือระยะห่างทั้งหมดระหว่างเลนส์กับภาพที่เกิดจากเลนส์
ตัวอย่าง
Input: image_distance=5, object_distance=10 Output: Focal length of a lens is: 3.333333 Explanation: 1/5 + 1/10 = 3/10🡺 F = 10/3 = 3.33333333 Input: image_distance = 7, object_distance = 10 Output: Focal length of a lens is: 4.1176470
แนวทางที่เราใช้เพื่อแก้ปัญหาข้างต้น −
- รับอินพุตของ image_disance และ object_distance
- หาผลรวม 1/image_distance และ 1/object_distance แล้วส่งคืนผลลัพธ์หารด้วย 1
- พิมพ์ผลลัพธ์
อัลกอริทึม
Start Step 1-> In function float focal_length(float image_distance, float object_distance) Return 1 / ((1 / image_distance) + (1 / object_distance)) Step 2-> In function int main() Declare and initialize the first input image_distance = 5 Declare and initialize the second input object_distance = 10 Print the results obtained from calling the function focal_length(image_distance, object_distance) Stop
ตัวอย่าง
#include <stdio.h> // Function to find the focal length of a lens float focal_length(float image_distance, float object_distance) { return 1 / ((1 / image_distance) + (1 / object_distance)); } // main function int main() { // distance between the lens and the image float image_distance = 5; // distance between the lens and the object float object_distance = 10; printf("Focal length of a lens is: %f\n", focal_length(image_distance, object_distance)); return 0; }
ผลลัพธ์
Focal length of a lens is: 3.333333