קוד קטן בC

  • הוסף לסימניות
  • #1
איך מחלצים מהמספר הבא(0.12345)
את הספרות שאחרי הנקודה העשרונית?
כמובן שאני לא יודעת כמה ספרות יש לי.
 
  • הוסף לסימניות
  • #2
כמה שיטות:
1. לעגל למעלה ולעשות X - Y = 0.12345
קוד:
<code>int main() {   double num = 23.345;   int intpart = (int)num;   double decpart = num - intpart;   printf("Num = %f, intpart = %d, decpart = %f\n", num, intpart, decpart); }</code></pre>
2. להפוך ל STRING ולחתוך אחרי הנקודה

3. ואם זה פלט אפשר להדפיס ישירות פקודה:
קוד:
<code>printf("%.6f", myFloat);</code>
 
  • הוסף לסימניות
  • #4
ישנן מספר דרכים, אולם הפתרון הכי יעיל ונכון (לדעתי) זה להתעסק עם ההצגה הבינארית של המספר, ופשוט להשתמש בסיביות הרלוונטיות לצרכים שלך.

זה נשמע מפוצץ ומסובך, אבל בתאכלס זה ממש לא ככה. כל מה שצריך זה להבין איך שפת C שומרת מספרים עשרוניים בזיכרון, ואז כבר נדע באיזו מסכה (mask) להשתמש כדי לבודד את הסיביות החשובות לנו ואם נדרשות פעולות נוספות כדי לתרגם אותן.

אני קצר בזמן כרגע, וההודעה גם מלפני כמה ימים כך שאין לי מושג אם הסתדרת כבר או לא, אז מקסימום תכתבי ואחזור עם קטע קוד מפורט.

סימוכין לכל מאן דבעי:
http://en.wikipedia.org/wiki/Single_precision
http://en.wikipedia.org/wiki/Double_precision

בברכה ובהצלחה,

אריה סגל.
 

פרוגבוט

תוכן שיווקי
פרסומת

פוסטים חדשים שאולי לא קראת....

הצטרפות לניוזלטר

איזה כיף שהצטרפתם לניוזלטר שלנו!

מעכשיו, תהיו הראשונים לקבל את כל העדכונים, החדשות, ההפתעות בלעדיות, והתכנים הכי חמים שלנו בפרוג!

לוח מודעות

הפרק היומי

הפרק היומי! כל ערב פרק תהילים חדש. הצטרפו אלינו לקריאת תהילים משותפת!


תהילים פרק כה

אלְדָוִד אֵלֶיךָ יי נַפְשִׁי אֶשָּׂא:באֱלֹהַי בְּךָ בָטַחְתִּי אַל אֵבוֹשָׁה אַל יַעַלְצוּ אֹיְבַי לִי:גגַּם כָּל קוֶֹיךָ לֹא יֵבֹשׁוּ יֵבֹשׁוּ הַבּוֹגְדִים רֵיקָם:דדְּרָכֶיךָ יי הוֹדִיעֵנִי אֹרְחוֹתֶיךָ לַמְּדֵנִי:ההַדְרִיכֵנִי בַאֲמִתֶּךָ וְלַמְּדֵנִי כִּי אַתָּה אֱלֹהֵי יִשְׁעִי אוֹתְךָ קִוִּיתִי כָּל הַיּוֹם:וזְכֹר רַחֲמֶיךָ יי וַחֲסָדֶיךָ כִּי מֵעוֹלָם הֵמָּה:זחַטֹּאות נְעוּרַי וּפְשָׁעַי אַל תִּזְכֹּר כְּחַסְדְּךָ זְכָר לִי אַתָּה לְמַעַן טוּבְךָ יי:חטוֹב וְיָשָׁר יי עַל כֵּן יוֹרֶה חַטָּאִים בַּדָּרֶךְ:טיַדְרֵךְ עֲנָוִים בַּמִּשְׁפָּט וִילַמֵּד עֲנָוִים דַּרְכּוֹ:יכָּל אָרְחוֹת יי חֶסֶד וֶאֱמֶת לְנֹצְרֵי בְרִיתוֹ וְעֵדֹתָיו:יאלְמַעַן שִׁמְךָ יי וְסָלַחְתָּ לַעֲוֹנִי כִּי רַב הוּא:יבמִי זֶה הָאִישׁ יְרֵא יי יוֹרֶנּוּ בְּדֶרֶךְ יִבְחָר:יגנַפְשׁוֹ בְּטוֹב תָּלִין וְזַרְעוֹ יִירַשׁ אָרֶץ:ידסוֹד יי לִירֵאָיו וּבְרִיתוֹ לְהוֹדִיעָם:טועֵינַי תָּמִיד אֶל יי כִּי הוּא יוֹצִיא מֵרֶשֶׁת רַגְלָי:טזפְּנֵה אֵלַי וְחָנֵּנִי כִּי יָחִיד וְעָנִי אָנִי:יזצָרוֹת לְבָבִי הִרְחִיבוּ מִמְּצוּקוֹתַי הוֹצִיאֵנִי:יחרְאֵה עָנְיִי וַעֲמָלִי וְשָׂא לְכָל חַטֹּאותָי:יטרְאֵה אוֹיְבַי כִּי רָבּוּ וְשִׂנְאַת חָמָס שְׂנֵאוּנִי:כשָׁמְרָה נַפְשִׁי וְהַצִּילֵנִי אַל אֵבוֹשׁ כִּי חָסִיתִי בָךְ:כאתֹּם וָיֹשֶׁר יִצְּרוּנִי כִּי קִוִּיתִיךָ:כבפְּדֵה אֱלֹהִים אֶת יִשְׂרָאֵל מִכֹּל צָרוֹתָיו:
נקרא  2  פעמים
למעלה