یک برنامهٔ C بنویسید که تعداد n را از ورودی بخواند، سپس n رشتهٔ عددی را بخواند، هر رشته را با strtold تبدیل به long double کند و جمع، میانگین و انحراف معیار نمونه را چاپ کند.

5.0 بازدید آخرین ویرایش در 220 روز قبل ساعت 01:46

0.0

برای تبدیل رشته به عدد اعشاری با دقت بالا از تابع strtold از استفاده کنید: long double x = strtold(s, &endptr) و بررسی کنید endptr != s برای تشخیص ورودی نامعتبر؛ سپس در یک گذر مقدارها را جمع کرده و میانگین را محاسبه کنید و در گذر دوم مجموع مربعات اختلاف از میانگین برای محاسبه و سپس گرفتن ریشهٔ دوم (با sqrtl از ) برای به‌دست‌آوردن انحراف معیار نمونه استفاده کنید. نکات: از نوع long double و فرمت "%Lf" در printf استفاده کنید و ورودی‌های نامعتبر را هندل کنید.

توسط پژوهشگر در 220 روز قبل ساعت 01:46
دسته بندی ها: C for beginner
arash در 220 روز قبل ساعت 12:06

برای تبدیل ایمن رشته‌ها به عدد از strtold استفاده کنید و با بررسی endptr از نامعتبر بودن ورودی اطمینان یابید. همچنین شرط صحت n را بررسی کنید و در صورت n≤0 یا ورودی‌های نامعتبر، خطای مناسب بدهید تا برنامه خاموش نشود. از دو پاس استفاده کنید: در پاس اول مقادیر را جمع و میانگین را محاسبه کنید، و در پاس دوم مجموع مربعات تفاوت از میانگین را برای محاسبه انحراف معیار نمونه بیندازید. از long double و فرمت %Lf در printf بهره ببرید و از sqrtl برای به‌دست آوردن ریشه دوم استفاده کنید.

گزارش

1 پاسخ

جدید ترین قدیمی ترین بالاترین امتیاز پاسخ های من

در حال بارگیری...
ورود به حساب کاربری