חשב את המסה המולרית (משקל מולקולרי) של כל תרכובת כימית על ידי הזנת הנוסחה שלה. מטפל בנוסחאות מורכבות עם סוגריים ומספק פירוט מפורט של יסודות.
המחשבון מסת מולרית הוא כלי חיוני עבור כימאים, סטודנטים וחוקרים שצריכים לקבוע במהירות ובדיוק את המשקל המולקולרי של תרכובות כימיות. מסה מולרית, הידועה גם בשם משקל מולקולרי, מייצגת את המסה של מול אחד של חומר ומבוטאת בגרמים למול (g/mol). מחשבון זה מאפשר לך להזין כל נוסחה כימית ולחשב מיד את המסה המולרית שלה על ידי חיבור המשקלים האטומיים של כל האלמנטים המרכיבים בהתאם לפרופורציות שלהם בתרכובת.
הבנת המסה המולרית היא יסודית לחישובים כימיים שונים, כולל סטוכיומטריה, הכנת פתרונות וניתוח תגובות. בין אם אתה מאזן משוואות כימיות, מכין פתרונות מעבדה או לומד על תכונות כימיות, ידיעת המסה המולרית המדויקת של תרכובות היא קריטית לתוצאות מדויקות.
המחשבון הידידותי שלנו מטפל במגוון רחב של נוסחאות כימיות, מהמולקולות הפשוטות כמו H₂O ועד תרכובות אורגניות מורכבות ומלח עם מספר אלמנטים. הכלי מזהה אוטומטית סמלי אלמנטים, מפרש תתי-מספרים, ומעבד סוגריים כדי להבטיח חישובים מדויקים לכל נוסחה כימית תקפה.
מסה מולרית מוגדרת כמסת מול אחד של חומר, הנמדדת בגרמים למול (g/mol). מול אחד מכיל בדיוק 6.02214076 × 10²³ ישויות יסודיות (אטומים, מולקולות או יחידות נוסחה) - מספר הידוע כמספר אבוגדרו. המסה המולרית של תרכובת שווה לסכום המסות האטומיות של כל האטומים במולקולה, תוך התחשבות בכמויותיהם המתאימות.
למשל, מים (H₂O) יש מסה מולרית של כ-18.015 g/mol, מחושבת על ידי חיבור:
זה אומר שמול אחד של מולקולות מים (6.02214076 × 10²³ מולקולות מים) יש מסה של 18.015 גרם.
המסה המולרית (M) של תרכובת מחושבת באמצעות הנוסחה הבאה:
איפה:
לתרכובות עם נוסחאות מורכבות הכוללות סוגריים, החישוב מתבצע לפי הצעדים הבאים:
למשל, חישוב המסה המולרית של הידרוקסיד סידן Ca(OH)₂:
הזן את הנוסחה הכימית
צפה בתוצאות
נתח את הפירוט של האלמנט
העתק או שתף את התוצאות
המחשבון מספק מספר פרטי מידע:
מחשבון המסה המולרית משרת מספר יישומים מעשיים בתחומים שונים:
בעוד שמחשבון המסה המולרית שלנו מציע פתרון מקוון נוח, ישנן שיטות וכלים חלופיים לחישוב מסה מולרית:
חישוב ידני: שימוש בטבלה מחזורית ומחשבון כדי לחבר מסות אטומיות
תוכנות כימיות מיוחדות: תוכניות כמו ChemDraw, Gaussian או ACD/Labs
אפליקציות ניידות: אפליקציות ממוקדות כימיה לסמארטפונים
תבניות גיליון אלקטרוני: נוסחאות מותאמות אישית ב-Excel או Google Sheets
מחשבים מדעיים: דגמים מתקדמים עם פונקציות כימיות
מחשבון המסה המולרית המקוון שלנו משלב את היתרונות הטובים ביותר של חלופות אלו: הוא חינמי, אינו דורש התקנה, מטפל בנוסחאות מורכבות, מספק פירוט מפורט, ומציע ממשק משתמש אינטואיטיבי.
המושג מסה מולרית התפתח במקביל להבנתנו את תיאוריה האטומית והרכב כימי. הנה כמה אבני דרך מרכזיות בהתפתחותה:
התיאוריה האטומית של ג'ון דלטון (1803) הציעה שהאלמנטים מורכבים מחלקיקים בלתי ניתנים לחלוקה הנקראים אטומים עם מסות ייחודיות. זה הניח את היסוד להבנה שתרכובות נוצרות כאשר אטומים מתאחדים ביחסים ספציפיים.
יואנס יעקוב ברזליאוס הציג סמלים כימיים לאלמנטים בשנת 1813, ויצר מערכת נוטציה סטנדרטית שהפכה את הייצוג של נוסחאות כימיות למערכתית.
סטניסלאו קניזארו הבהיר את ההבחנה בין משקל אטומי למשקל מולקולרי בקונגרס קרלסרוהה (1860), ועזר לפתור בלבול בקהילה המדעית.
המושג מול היה מפותח בסוף המאה ה-19, אם כי המונח לא היה בשימוש נרחב עד מאוחר יותר.
האיגוד הבינלאומי לכימיה טהורה ויישומית (IUPAC) נוסד בשנת 1919 והחל בסטנדרטיזציה של נומנקלטורה כימית ומדידות.
בשנת 1971, המול אומץ כיחידת בסיס SI, שהוגדרה ככמות חומר המכילה את מספר הישויות כפי שיש באטומים ב-12 גרם של פחמן-12.
ההגדרה האחרונה של המול (בתוקף מ-20 במאי 2019) מגדירה אותו במונחים של קבוע אבוגדרו, שהוא עכשיו קבוע בדיוק 6.02214076 × 10²³ ישויות יסודיות.
עם עליית המחשבים, חישוב המסה המולרית הפך לקל ונגיש יותר. תוכנות כימיות מוקדמות בשנות ה-80 וה-90 כללו מחשבוני מסה מולרית כפונקציות בסיסיות.
מהפכת האינטרנט בסוף שנות ה-90 ותחילת שנות ה-2000 הביאה מחשבוני מסה מולרית מקוונים, והפכה את הכלים הללו לזמינים בחינם לסטודנטים ומקצוענים ברחבי העולם.
מחשבי המסה המולרית המתקדמים של היום, כמו שלנו, יכולים לטפל בנוסחאות מורכבות עם סוגריים, לפרש מגוון רחב של נוטציות כימיות, ולספק פירוט מפורט של הרכבים אלמנטריים.
הנה דוגמאות קוד לחישוב מסה מולרית בשפות תכנות שונות:
1# דוגמת פייתון לחישוב מסה מולרית
2def calculate_molar_mass(formula):
3 # מילון של מסות אטומיות
4 atomic_masses = {
5 'H': 1.008, 'He': 4.0026, 'Li': 6.94, 'Be': 9.0122, 'B': 10.81,
6 'C': 12.011, 'N': 14.007, 'O': 15.999, 'F': 18.998, 'Ne': 20.180,
7 'Na': 22.990, 'Mg': 24.305, 'Al': 26.982, 'Si': 28.085, 'P': 30.974,
8 'S': 32.06, 'Cl': 35.45, 'Ar': 39.948, 'K': 39.098, 'Ca': 40.078
9 # הוסף עוד אלמנטים לפי הצורך
10 }
11
12 # ניתוח הנוסחה וחישוב המסה המולרית
13 i = 0
14 total_mass = 0
15
16 while i < len(formula):
17 if formula[i].isupper():
18 # התחלה של סימן אלמנט
19 if i + 1 < len(formula) and formula[i+1].islower():
20 element = formula[i:i+2]
21 i += 2
22 else:
23 element = formula[i]
24 i += 1
25
26 # בדוק מספרים (תת-מספר)
27 count = ''
28 while i < len(formula) and formula[i].isdigit():
29 count += formula[i]
30 i += 1
31
32 count = int(count) if count else 1
33
34 if element in atomic_masses:
35 total_mass += atomic_masses[element] * count
36 else:
37 i += 1 # דלג על תווים בלתי צפויים
38
39 return total_mass
40
41# דוגמת שימוש
42print(f"H2O: {calculate_molar_mass('H2O'):.3f} g/mol")
43print(f"NaCl: {calculate_molar_mass('NaCl'):.3f} g/mol")
44print(f"C6H12O6: {calculate_molar_mass('C6H12O6'):.3f} g/mol")
45
1// דוגמת JavaScript לחישוב מסה מולרית
2function calculateMolarMass(formula) {
3 const atomicMasses = {
4 'H': 1.008, 'He': 4.0026, 'Li': 6.94, 'Be': 9.0122, 'B': 10.81,
5 'C': 12.011, 'N': 14.007, 'O': 15.999, 'F': 18.998, 'Ne': 20.180,
6 'Na': 22.990, 'Mg': 24.305, 'Al': 26.982, 'Si': 28.085, 'P': 30.974,
7 'S': 32.06, 'Cl': 35.45, 'Ar': 39.948, 'K': 39.098, 'Ca': 40.078
8 // הוסף עוד אלמנטים לפי הצורך
9 };
10
11 let i = 0;
12 let totalMass = 0;
13
14 while (i < formula.length) {
15 if (formula[i].match(/[A-Z]/)) {
16 // התחלה של סימן אלמנט
17 let element;
18 if (i + 1 < formula.length && formula[i+1].match(/[a-z]/)) {
19 element = formula.substring(i, i+2);
20 i += 2;
21 } else {
22 element = formula[i];
23 i += 1;
24 }
25
26 // בדוק מספרים (תת-מספר)
27 let countStr = '';
28 while (i < formula.length && formula[i].match(/[0-9]/)) {
29 countStr += formula[i];
30 i += 1;
31 }
32
33 const count = countStr ? parseInt(countStr, 10) : 1;
34
35 if (atomicMasses[element]) {
36 totalMass += atomicMasses[element] * count;
37 }
38 } else {
39 i += 1; // דלג על תווים בלתי צפויים
40 }
41 }
42
43 return totalMass;
44}
45
46// דוגמת שימוש
47console.log(`H2O: ${calculateMolarMass('H2O').toFixed(3)} g/mol`);
48console.log(`NaCl: ${calculateMolarMass('NaCl').toFixed(3)} g/mol`);
49console.log(`C6H12O6: ${calculateMolarMass('C6H12O6').toFixed(3)} g/mol`);
50
1import java.util.HashMap;
2import java.util.Map;
3
4public class MolarMassCalculator {
5 private static final Map<String, Double> ATOMIC_MASSES = new HashMap<>();
6
7 static {
8 // אתחול מסות אטומיות
9 ATOMIC_MASSES.put("H", 1.008);
10 ATOMIC_MASSES.put("He", 4.0026);
11 ATOMIC_MASSES.put("Li", 6.94);
12 ATOMIC_MASSES.put("Be", 9.0122);
13 ATOMIC_MASSES.put("B", 10.81);
14 ATOMIC_MASSES.put("C", 12.011);
15 ATOMIC_MASSES.put("N", 14.007);
16 ATOMIC_MASSES.put("O", 15.999);
17 ATOMIC_MASSES.put("F", 18.998);
18 ATOMIC_MASSES.put("Ne", 20.180);
19 ATOMIC_MASSES.put("Na", 22.990);
20 ATOMIC_MASSES.put("Mg", 24.305);
21 ATOMIC_MASSES.put("Al", 26.982);
22 ATOMIC_MASSES.put("Si", 28.085);
23 ATOMIC_MASSES.put("P", 30.974);
24 ATOMIC_MASSES.put("S", 32.06);
25 ATOMIC_MASSES.put("Cl", 35.45);
26 ATOMIC_MASSES.put("Ar", 39.948);
27 ATOMIC_MASSES.put("K", 39.098);
28 ATOMIC_MASSES.put("Ca", 40.078);
29 // הוסף עוד אלמנטים לפי הצורך
30 }
31
32 public static double calculateMolarMass(String formula) {
33 int i = 0;
34 double totalMass = 0;
35
36 while (i < formula.length()) {
37 if (Character.isUpperCase(formula.charAt(i))) {
38 // התחלה של סימן אלמנט
39 String element;
40 if (i + 1 < formula.length() && Character.isLowerCase(formula.charAt(i+1))) {
41 element = formula.substring(i, i+2);
42 i += 2;
43 } else {
44 element = formula.substring(i, i+1);
45 i += 1;
46 }
47
48 // בדוק מספרים (תת-מספר)
49 StringBuilder countStr = new StringBuilder();
50 while (i < formula.length() && Character.isDigit(formula.charAt(i))) {
51 countStr.append(formula.charAt(i));
52 i += 1;
53 }
54
55 int count = countStr.length() > 0 ? Integer.parseInt(countStr.toString()) : 1;
56
57 if (ATOMIC_MASSES.containsKey(element)) {
58 totalMass += ATOMIC_MASSES.get(element) * count;
59 }
60 } else {
61 i += 1; // דלג על תווים בלתי צפויים
62 }
63 }
64
65 return totalMass;
66 }
67
68 public static void main(String[] args) {
69 System.out.printf("H2O: %.3f g/mol%n", calculateMolarMass("H2O"));
70 System.out.printf("NaCl: %.3f g/mol%n", calculateMolarMass("NaCl"));
71 System.out.printf("C6H12O6: %.3f g/mol%n", calculateMolarMass("C6H12O6"));
72 }
73}
74
1' פונקציית VBA ב-Excel לחישוב מסה מולרית
2Function CalculateMolarMass(formula As String) As Double
3 ' הגדרת מסות אטומיות במילון
4 Dim atomicMasses As Object
5 Set atomicMasses = CreateObject("Scripting.Dictionary")
6
7 atomicMasses.Add "H", 1.008
8 atomicMasses.Add "He", 4.0026
9 atomicMasses.Add "Li", 6.94
10 atomicMasses.Add "Be", 9.0122
11 atomicMasses.Add "B", 10.81
12 atomicMasses.Add "C", 12.011
13 atomicMasses.Add "N", 14.007
14 atomicMasses.Add "O", 15.999
15 atomicMasses.Add "F", 18.998
16 atomicMasses.Add "Ne", 20.18
17 atomicMasses.Add "Na", 22.99
18 atomicMasses.Add "Mg", 24.305
19 atomicMasses.Add "Al", 26.982
20 atomicMasses.Add "Si", 28.085
21 atomicMasses.Add "P", 30.974
22 atomicMasses.Add "S", 32.06
23 atomicMasses.Add "Cl", 35.45
24 atomicMasses.Add "Ar", 39.948
25 atomicMasses.Add "K", 39.098
26 atomicMasses.Add "Ca", 40.078
27 ' הוסף עוד אלמנטים לפי הצורך
28
29 Dim i As Integer
30 Dim totalMass As Double
31 Dim element As String
32 Dim countStr As String
33 Dim count As Integer
34
35 i = 1
36 totalMass = 0
37
38 Do While i <= Len(formula)
39 If Asc(Mid(formula, i, 1)) >= 65 And Asc(Mid(formula, i, 1)) <= 90 Then
40 ' התחלה של סימן אלמנט
41 If i + 1 <= Len(formula) And Asc(Mid(formula, i + 1, 1)) >= 97 And Asc(Mid(formula, i + 1, 1)) <= 122 Then
42 element = Mid(formula, i, 2)
43 i = i + 2
44 Else
45 element = Mid(formula, i, 1)
46 i = i + 1
47 End If
48
49 ' בדוק מספרים (תת-מספר)
50 countStr = ""
51 Do While i <= Len(formula) And Asc(Mid(formula, i, 1)) >= 48 And Asc(Mid(formula, i, 1)) <= 57
52 countStr = countStr & Mid(formula, i, 1)
53 i = i + 1
54 Loop
55
56 If countStr = "" Then
57 count = 1
58 Else
59 count = CInt(countStr)
60 End If
61
62 If atomicMasses.Exists(element) Then
63 totalMass = totalMass + atomicMasses(element) * count
64 End If
65 Else
66 i = i + 1 ' דלג על תווים בלתי צפויים
67 End If
68 Loop
69
70 CalculateMolarMass = totalMass
71End Function
72
73' שימוש ב-Excel:
74' =CalculateMolarMass("H2O")
75' =CalculateMolarMass("NaCl")
76' =CalculateMolarMass("C6H12O6")
77
1#include <iostream>
2#include <string>
3#include <map>
4#include <cctype>
5#include <iomanip>
6
7double calculateMolarMass(const std::string& formula) {
8 // הגדרת מסות אטומיות
9 std::map<std::string, double> atomicMasses = {
10 {"H", 1.008}, {"He", 4.0026}, {"Li", 6.94}, {"Be", 9.0122}, {"B", 10.81},
11 {"C", 12.011}, {"N", 14.007}, {"O", 15.999}, {"F", 18.998}, {"Ne", 20.180},
12 {"Na", 22.990}, {"Mg", 24.305}, {"Al", 26.982}, {"Si", 28.085}, {"P", 30.974},
13 {"S", 32.06}, {"Cl", 35.45}, {"Ar", 39.948}, {"K", 39.098}, {"Ca", 40.078}
14 // הוסף עוד אלמנטים לפי הצורך
15 };
16
17 double totalMass = 0.0;
18 size_t i = 0;
19
20 while (i < formula.length()) {
21 if (std::isupper(formula[i])) {
22 // התחלה של סימן אלמנט
23 std::string element;
24 if (i + 1 < formula.length() && std::islower(formula[i+1])) {
25 element = formula.substr(i, 2);
26 i += 2;
27 } else {
28 element = formula.substr(i, 1);
29 i += 1;
30 }
31
32 // בדוק מספרים (תת-מספר)
33 std::string countStr;
34 while (i < formula.length() && std::isdigit(formula[i])) {
35 countStr += formula[i];
36 i += 1;
37 }
38
39 int count = countStr.empty() ? 1 : std::stoi(countStr);
40
41 if (atomicMasses.find(element) != atomicMasses.end()) {
42 totalMass += atomicMasses[element] * count;
43 }
44 } else {
45 i += 1; // דלג על תווים בלתי צפויים
46 }
47 }
48
49 return totalMass;
50}
51
52int main() {
53 std::cout << std::fixed << std::setprecision(3);
54 std::cout << "H2O: " << calculateMolarMass("H2O") << " g/mol" << std::endl;
55 std::cout << "NaCl: " << calculateMolarMass("NaCl") << " g/mol" << std::endl;
56 std::cout << "C6H12O6: " << calculateMolarMass("C6H12O6") << " g/mol" << std::endl;
57
58 return 0;
59}
60
מחשבון המסה המולרית שלנו כולל מספר תכונות מתקדמות כדי לשפר את הפונקציונליות שלו:
המחשבון יכול לעבד נוסחאות כימיות מורכבות עם:
למטרות חינוכיות, המחשבון מספק:
המחשבון כולל ייצוג חזותי של הרכב המולקולה, המראה את התרומה היחסית של כל אלמנט באמצעות תרשים עמודים בצבעים.
המחשבון מאמת נוסחאות קלט ומספק הודעות שגיאה מועילות עבור:
מסה מולרית היא המסה של מול אחד של חומר, הנמדדת בגרמים למול (g/mol). היא שווה לסכום המסות האטומיות של כל האטומים במולקולה, תוך התחשבות בכמויותיהם המתאימות.
מסה מולרית ומשקל מולקולרי מייצגים את אותה כמות פיזיקלית אך מבוטאים ביחידות שונות. מסה מולרית מבוטאת בגרמים למול (g/mol), בעוד שמשקל מולקולרי לעיתים קרובות מבוטא ביחידות מסה אטומית (amu) או דלטון (Da). מספרית, יש להם את אותה ערך.
מסה מולרית חיונית להמרה בין כמות חומר (מולים) ומסה (גרמים). המרה זו היא יסודית לחישובים סטוכיומטריים, הכנת פתרונות ורבים אחרים יישומים כימיים.
המחשבון שלנו משתמש בערכים האחרונים של מסות אטומיות מ-IUPAC ומספק תוצאות עם ארבע ספרות עשרוניות של דיוק. עבור רוב החישובים הכימיים, רמת דיוק זו מספיקה בהחלט.
כן, המחשבון יכול לעבד נוסחאות מורכבות עם סוגריים, כמו Ca(OH)2, ואפילו סוגריים מקוננים כמו Fe(C5H5)2.
חישובי מסה מולרית סטנדרטיים משתמשים בממוצע המשוקלל של איזוטופים המתרחשים בטבע. אם אתה צריך לחשב את המסה של איזוטופ ספציפי, תצטרך להשתמש במסה המדויקת של אותו איזוטופ במקום המסה האטומית הסטנדרטית.
הפירוט של האלמנט מראה את סימן כל אלמנט, המסה האטומית, מספרו בנוסחה, תרומת המסה שלו לסך הכל ואחוז לפי מסה. זה עוזר לך להבין את הרכב התרכובת.
כן, המחשבון עובד עבור כל נוסחה כימית תקפה, כולל תרכובות אורגניות כמו C6H12O6 (גלוקוז) או C8H10N4O2 (קפאין).
בדוק את הנוסחה שלך עבור:
אתה יכול להשתמש במסה המולרית המחושבת כדי:
בראון, ט. ל., למאי, ה. א., בירסטן, ב. א., מרפי, צ. ג., וודוורד, פ. מ., & סטולצ'פוס, מ. ו. (2017). כימיה: המדע המרכזי (מהדורה 14). פרסון.
זומדאל, ס. ס., & זומדאל, ס. א. (2016). כימיה (מהדורה 10). קנג'ייג' לנרנינג.
האיגוד הבינלאומי לכימיה טהורה ויישומית. (2018). משקלי האטומים של האלמנטים 2017. כימיה טהורה ויישומית, 90(1), 175-196. https://doi.org/10.1515/pac-2018-0605
ויזר, מ. א., הולדן, נ., קופלן, ט. ב., ואחרים. (2013). משקלי האטומים של האלמנטים 2011. כימיה טהורה ויישומית, 85(5), 1047-1078. https://doi.org/10.1351/PAC-REP-13-03-02
המכון הלאומי לסטנדרטים וטכנולוגיה. (2018). NIST Chemistry WebBook, SRD 69. https://webbook.nist.gov/chemistry/
צ'אנג, ר., & גולדסבי, ק. א. (2015). כימיה (מהדורה 12). מקגרו-היל חינוך.
פטרוצ'י, ר. ה., הרינג, פ. ג., מדורה, ג. ד., & ביסונייט, צ. (2016). כימיה כללית: עקרונות ויישומים מודרניים (מהדורה 11). פרסון.
החברה המלכותית לכימיה. (2023). טבלה מחזורית. https://www.rsc.org/periodic-table
מחשבון המסה המולרית שלנו מיועד להיות כלי אמין וידידותי למשתמש עבור סטודנטים, מחנכים, חוקרים ומקצוענים בכימיה ובתחומים קשורים. אנו מקווים שהוא עוזר לך בחישובים הכימיים שלך ומגביר את הבנתך בהרכב מולקולרי.
נסה לחשב את המסה המולרית של תרכובות שונות כדי לראות כיצד הרכבן משפיע על תכונותיהן!
גלה עוד כלים שעשויים להיות שימושיים עבור זרימת העבודה שלך