EZ Notes Logo

EZNotes

🎯 Aim

To write a C/C++ program that takes temperature in Fahrenheit as input from the user and converts it to Celsius using the conversion formula.

🛠️ What You Need

  • Visual Studio Code or any C/C++ compiler
  • Knowledge of variables, input/output, and arithmetic operations

📖 Introduction

Temperature can be measured in different units. The two most common scales are:

  • Fahrenheit (°F) — used in the United States
  • Celsius (°C) — used in most other countries

The formula to convert Fahrenheit to Celsius is:

°C = (°F - 32) × 5/9

In this practical, you will write a program that:

  • Asks the user to enter temperature in Fahrenheit
  • Reads the input using scanf()
  • Converts it to Celsius using the formula
  • Displays the result using printf()
💡 Tip: Use float data type for temperature values because they can have decimal values.

📝 Steps

Step 1: Write the Program

  1. Open VS Code or any C compiler.
  2. Create a new file named temp_convert.c.
  3. Write the following code:
/* Practical 16: Program to convert Fahrenheit to Celsius */ #include <stdio.h> int main() { // Declare variables float fahrenheit, celsius; // Ask user for temperature in Fahrenheit printf("Enter temperature in Fahrenheit: "); scanf("%f", &fahrenheit); // Convert to Celsius using formula: C = (F - 32) * 5/9 celsius = (fahrenheit - 32) * 5.0 / 9.0; // Display the result printf("----------------------------\n"); printf("Fahrenheit: %.2f °F\n", fahrenheit); printf("Celsius : %.2f °C\n", celsius); printf("----------------------------\n"); return 0; }

Step 2: Explanation of the Code

  1. #include <stdio.h> — Includes the standard input/output library.
  2. float fahrenheit, celsius; — Declares variables for temperature values.
  3. printf("Enter temperature in Fahrenheit: "); — Prompts the user to enter temperature.
  4. scanf("%f", &fahrenheit); — Reads the Fahrenheit value from the user.
  5. celsius = (fahrenheit - 32) * 5.0 / 9.0; — Converts to Celsius using the formula.
  6. printf() — Displays both Fahrenheit and Celsius values.

Step 3: Save, Compile, and Run

  1. Save the file (Ctrl + S).
  2. Open the terminal and compile using the command:
gcc temp_convert.c -o temp_convert

Run the program:

./temp_convert

Sample Input & Output:

Enter temperature in Fahrenheit: 98.6 ---------------------------- Fahrenheit: 98.60 °F Celsius : 37.00 °C ----------------------------

Step 4: Test with Different Inputs

  1. Test 1: Fahrenheit = 32 → Celsius = 0.00 (Freezing point)
  2. Test 2: Fahrenheit = 212 → Celsius = 100.00 (Boiling point)
  3. Test 3: Fahrenheit = 0 → Celsius = -17.78 (Very cold)
  4. Test 4: Fahrenheit = 100 → Celsius = 37.78 (Body temperature)
Test 1: Enter temperature in Fahrenheit: 32 Fahrenheit: 32.00 °F Celsius : 0.00 °C Test 2: Enter temperature in Fahrenheit: 212 Fahrenheit: 212.00 °F Celsius : 100.00 °C

📊 Formula Used

Formula Description Example
°C = (°F - 32) × 5/9 Fahrenheit to Celsius 98.6°F → 37.0°C
°F = (°C × 9/5) + 32 Celsius to Fahrenheit (reverse) 37.0°C → 98.6°F
Freezing Point Water freezes 32°F = 0°C
Boiling Point Water boils 212°F = 100°C

📊 Observations

  • The program successfully takes Fahrenheit temperature as input.
  • The conversion formula gives accurate Celsius values.
  • 32°F converts to 0°C (freezing point of water).
  • 212°F converts to 100°C (boiling point of water).
  • The result is displayed with 2 decimal places for clarity.

✅ Result

You have successfully written a C program that converts temperature from Fahrenheit to Celsius. You have learned how to:

  • Take user input using scanf()
  • Perform arithmetic calculations
  • Display output using printf()
  • Use floating-point numbers for accurate results
📌 Important: Use 5.0 / 9.0 instead of 5 / 9 because 5/9 with integers gives 0 in C/C++. Using 5.0/9.0 ensures floating-point division.
💡 Tip: You can extend this program to convert Celsius to Fahrenheit as well. The formula is: °F = (°C × 9/5) + 32

🎯 مقصد

ایک C/C++ پروگرام لکھنا جو صارف سے فارن ہائیٹ میں درجہ حرارت ان پٹ کے طور پر لے اور اسے سینٹی گریڈ میں تبدیل کرے۔

🛠️ آپ کو کیا چاہیے

  • Visual Studio Code یا کوئی بھی C/C++ کمپائلر
  • متغیرات، ان پٹ/آؤٹ پٹ، اور ریاضی کے عمل کی معلومات

📖 تعارف

درجہ حرارت کو مختلف اکائیوں میں ماپا جا سکتا ہے۔ دو سب سے عام پیمانے ہیں:

  • فارن ہائیٹ (°F) — امریکہ میں استعمال ہوتا ہے
  • سینٹی گریڈ (°C) — زیادہ تر دیگر ممالک میں استعمال ہوتا ہے

فارن ہائیٹ کو سینٹی گریڈ میں تبدیل کرنے کا فارمولا ہے:

°C = (°F - 32) × 5/9

اس عملی میں، آپ ایک پروگرام لکھیں گے جو:

  • صارف سے فارن ہائیٹ میں درجہ حرارت درج کرنے کو کہتا ہے
  • scanf() کا استعمال کرتے ہوئے ان پٹ پڑھتا ہے
  • فارمولا کا استعمال کرتے ہوئے اسے سینٹی گریڈ میں تبدیل کرتا ہے
  • printf() کا استعمال کرتے ہوئے نتیجہ ظاہر کرتا ہے
💡 مشورہ: درجہ حرارت کی قدروں کے لیے float ڈیٹا ٹائپ استعمال کریں کیونکہ ان میں اعشاریہ کی قیمتیں ہو سکتی ہیں۔

📝 اقدامات

پہلا قدم: پروگرام لکھیں

  1. VS Code یا کوئی بھی C کمپائلر کھولیں۔
  2. temp_convert.c نام کی ایک نئی فائل بنائیں۔
  3. نیچے دیا گیا کوڈ لکھیں:
/* Practical 16: Program to convert Fahrenheit to Celsius */ #include <stdio.h> int main() { // Declare variables float fahrenheit, celsius; // Ask user for temperature in Fahrenheit printf("Enter temperature in Fahrenheit: "); scanf("%f", &fahrenheit); // Convert to Celsius using formula: C = (F - 32) * 5/9 celsius = (fahrenheit - 32) * 5.0 / 9.0; // Display the result printf("----------------------------\n"); printf("Fahrenheit: %.2f °F\n", fahrenheit); printf("Celsius : %.2f °C\n", celsius); printf("----------------------------\n"); return 0; }

دوسرا قدم: کوڈ کی وضاحت

  1. #include <stdio.h> — معیاری ان پٹ/آؤٹ پٹ لائبریری شامل کرتا ہے۔
  2. float fahrenheit, celsius; — درجہ حرارت کی قدروں کے لیے متغیرات کا اعلان کرتا ہے۔
  3. printf("Enter temperature in Fahrenheit: "); — صارف کو درجہ حرارت درج کرنے کا کہتا ہے۔
  4. scanf("%f", &fahrenheit); — صارف سے فارن ہائیٹ کی قیمت پڑھتا ہے۔
  5. celsius = (fahrenheit - 32) * 5.0 / 9.0; — فارمولا کا استعمال کرتے ہوئے سینٹی گریڈ میں تبدیل کرتا ہے۔
  6. printf() — فارن ہائیٹ اور سینٹی گریڈ دونوں قدروں کو ظاہر کرتا ہے۔

تیسرا قدم: محفوظ کریں، کمپائل کریں اور چلائیں

  1. فائل کو محفوظ کریں (Ctrl + S
  2. ٹرمینل کھولیں اور نیچے دی گئی کمانڈ استعمال کرتے ہوئے کمپائل کریں:
gcc temp_convert.c -o temp_convert

پروگرام چلائیں:

./temp_convert

نمونہ ان پٹ اور آؤٹ پٹ:

Enter temperature in Fahrenheit: 98.6 ---------------------------- Fahrenheit: 98.60 °F Celsius : 37.00 °C ----------------------------

چوتھا قدم: مختلف ان پٹ کے ساتھ ٹیسٹ کریں

  1. ٹیسٹ 1: فارن ہائیٹ = 32 → سینٹی گریڈ = 0.00 (جمود کا نقطہ)
  2. ٹیسٹ 2: فارن ہائیٹ = 212 → سینٹی گریڈ = 100.00 (ابلنے کا نقطہ)
  3. ٹیسٹ 3: فارن ہائیٹ = 0 → سینٹی گریڈ = -17.78 (بہت سرد)
  4. ٹیسٹ 4: فارن ہائیٹ = 100 → سینٹی گریڈ = 37.78 (جسم کا درجہ حرارت)

📊 استعمال شدہ فارمولا

فارمولا وضاحت مثال
°C = (°F - 32) × 5/9 فارن ہائیٹ سے سینٹی گریڈ 98.6°F → 37.0°C
°F = (°C × 9/5) + 32 سینٹی گریڈ سے فارن ہائیٹ (الٹ) 37.0°C → 98.6°F
جمود کا نقطہ پانی جم جاتا ہے 32°F = 0°C
ابلنے کا نقطہ پانی ابلتا ہے 212°F = 100°C

📊 مشاہدات

  • پروگرام کامیابی سے فارن ہائیٹ درجہ حرارت ان پٹ کے طور پر لیتا ہے۔
  • تبدیلی کا فارمولا درست سینٹی گریڈ قیمتیں دیتا ہے۔
  • 32°F → 0°C (پانی کا جمود کا نقطہ)
  • 212°F → 100°C (پانی کا ابلنے کا نقطہ)
  • نتیجہ وضاحت کے لیے 2 اعشاریہ جگہوں پر ظاہر کیا جاتا ہے۔

✅ نتیجہ

آپ نے کامیابی سے ایک C پروگرام لکھا ہے جو درجہ حرارت کو فارن ہائیٹ سے سینٹی گریڈ میں تبدیل کرتا ہے۔ آپ نے سیکھ لیا ہے:

  • scanf() کا استعمال کرتے ہوئے صارف سے ان پٹ لینا
  • ریاضی کے حسابات کرنا
  • printf() کا استعمال کرتے ہوئے آؤٹ پٹ ظاہر کرنا
  • درست نتائج کے لیے فلوٹنگ پوائنٹ نمبرز کا استعمال
📌 اہم: 5/9 کے بجائے 5.0 / 9.0 استعمال کریں کیونکہ C/C++ میں 5/9 انٹیجرز کے ساتھ 0 دیتا ہے۔ 5.0/9.0 کا استعمال فلوٹنگ پوائنٹ ڈویژن کو یقینی بناتا ہے۔
💡 مشورہ: آپ اس پروگرام کو سینٹی گریڈ سے فارن ہائیٹ میں تبدیل کرنے کے لیے بھی بڑھا سکتے ہیں۔ فارمولا ہے: °F = (°C × 9/5) + 32
⬅ Back to Practical Notebooks