بدست آوردن عدد اول و فاکتوریل
به زبان سی پلاس پلاس
بهترین مورد برای سوم دبیرستان و کاردانی

بدست آوردن عدد اول و فاکتوریل
به زبان سی پلاس پلاس
بهترین مورد برای سوم دبیرستان و کاردانی
بدست آوردن مجموعه اعداد و توان و عدد کامل
به زبان سی پلاس پلاس
دانلود پروژه استتسکوپ الکترونیک پیاده سازی شده با ویژوال سی 6 (Electronic Stethoscope)
پروژه و سورس Reed Solomon درس معماری ذخیره سازی
به زبان سی C
به همراه دکیومنت و سورس با فرمت ورد
به همراه منابع اصلی
A Tutorial on Reed-Solomon Coding for Fault-Tolerance in RAID-like Systems
موضوع مقاله :
RAID
به همراه سورس تمرینات درس به زبان سی و سی شارپ
جواب سوالات و تمرینات
پروژه: Reed Solomon
تهیه کننده: جعفر عالی نژاد
استاد: دکتر
درس: معماری ذخیره سازی
-----------------------------------------------------------------------------------------------*/
#include <stdio.h>
#include <stdlib.h>
#include <string.h>
#include <sys/time.h>
#include <sys/types.h>
#include <sys/stat.h>
#define prim_poly_16 0210013
typedef unsigned short unit;
typedef struct {
int *condensed_matrix;
int *row_identities;
} Condensed_Matrix;
extern void gf_modar_setup();
extern int gf_single_multiply(int a, int b);
extern int gf_single_divide(int a, int b);
extern void gf_fprint_matrix(FILE *f, int *m, int rows, int cols);
extern void gf_fast_add_parity(void *to_add, void *to_modify, int size);
extern void gf_add_parity(void *to_add, void *to_modify, int size);
extern void gf_mult_region(void *region, int size, int factor);
extern int gf_log(int value);
extern int *gf_make_vandermonde(int rows, int cols);
extern int *gf_make_dispersal_matrix(int rows, int cols);
extern Condensed_Matrix *gf_condense_dispersal_matrix(
int *disp,
int *existing_rows,
int rows,
int cols);
extern int *gf_invert_matrix(int *mat, int rows);
extern int *gf_matrix_multiply(int *a, int *b, int rows);
extern void gf_write_matrix(FILE *f, int *a, int rows, int cols);
extern int *gf_read_matrix(FILE *f, int *rows, int *cols);
static int gf_already_setup = 0;
static int Modar_w = 16;
static int Modar_nw = 65536;
static int Modar_nwm1 = 65535;
static int Modar_poly = prim_poly_16;
static int *B_TO_J;
static int *J_TO_B;
static int Modar_M;
static int Modar_N;
static int Modar_Iam;
int gf_single_multiply(int xxx, int yyy)
{
unsigned int sum_j;
unit zzz;
gf_modar_setup();
if (xxx == 0 || yyy == 0) {
zzz = 0;
} else {
sum_j = (int) (B_TO_J[xxx] + (int) B_TO_J[yyy]);
if (sum_j >= Modar_nwm1) sum_j -= Modar_nwm1;
zzz = J_TO_B[sum_j];
}
return zzz;
}
int gf_single_divide(int a, int b)
{
int sum_j;
gf_modar_setup();
if (b == 0) return -1;
if (a == 0) return 0;
sum_j = B_TO_J[a] - B_TO_J[b];
if (sum_j < 0) sum_j += Modar_nwm1;
جدول تناوبی عنصرهای شیمیایی، نمایش جدولی عنصرهای شیمیاییبر پایهٔ عدد اتمی، آرایش الکترونی و ویژگیهای شیمیایی آنها است. ترتیب جایگیری عنصرها در این جدول از عدد اتمی (شمار پروتونهای) کمتر به سوی عدد اتمی بالاتر است. شکل استاندارد این جدول ۱۸ × ۷ است؛ عنصرهای اصلی در بالا و دو ردیف کوچکتر از عنصرها در پایین جای دارد. میتوان این جدول را به چهار مستطیل شکست، این چهار بلوک مستطیلی عبارتند از: بلوک اس در سمت چپ، بلوک پی در راست، بلوک دی (فلزات واسطه) در وسط و بلوک اف (فلزات واسطهٔ داخلی) در پایین. ردیفهای این جدول، دوره و ستونهای آن، گروههای جدول تناوبی نام دارند. همچنین گاهی برخی از این گروهها نامهای ویژهای دارند. برای نمونه گروه هالوژنهاو گازهای نجیب از آن جملهاند. هدف از ساخت جدول تناوبی، چه به شکل مستطیلی و چه به شکلهای دیگر، بررسی بهتر ویژگیهای شیمیایی عنصرها بوده است. این جدول، کاربرد زیادی در دانش شیمی و پردازش رفتار عنصرها دارد.
جدول تناوبی با نام دیمیتری مندلیف شناخته شده است، با اینکه پیشروان دیگری پیش از او وجود داشتهاند. او این جدول را در سال ۱۸۶۹ منتشر کرد. این، نخستین جدولی بود که به این گستردگی مرتب شده بود. مندلیف این جدول را تهیه کرد تا ویژگیهای دورهای آنچه که بعدها «عنصر» نام گرفت را بهتر نشان دهد. وی توانسته بود برخی ویژگیهای عنصرهایی که هنوز کشف نشده بود را پیشبینی کند و جای آنها را خالی گذاشته بود. کمکم با پیشرفت دانش، عنصرهای تازهای شناسایی شد و جای خالی عنصرها در جدول پُر شد. با شناسایی عنصرهای نو و گسترش شبیهسازیهای نظری دربارهٔ رفتار شیمیایی مواد، جدول آن روز مندلیف بسیار گستردهتر شده است.
همهٔ عنصرهای شیمیایی از عدد اتمی ۱ (هیدروژن) تا ۱۱۸ (آناناکتیوم) شناسایی یا ساخته شدهاند. دانشمندان هنوز به دنبال ساخت عنصرهای پس از آناناکتیوم هستند و البته این پرسش را پیش رو دارند که عنصرهای تازهتر چگونه جدول را اصلاح خواهند کرد. همچنین ایزوتوپهای پرتوزایبسیاری هم در آزمایشگاه ساخته شده است
این برنامه که به زبان سی پلاس پلاس نوشته شده است مبنای اعداد را به هم تبدیل می کند
درعلوم کامپیوتر و تئوری اطلاعات، کدگذاری هافمن یک الگوریتم کدگذاریبرای فشردهسازی بیاتلاف اطلاعات است.
این تعبیر بر میگردد به استفاده از جدول کد طول متغیر برای کد کردن هر کدام از نشانههای مبدا (مانند نویسههای یک پرونده). جدول کد طول متغیر از روشی بخصوص مبنی بر احتمال وقوع هر کدام از نشانهای مبدا بدست میآید. این روش بوسیلهٔ دیوید هافمن توسعه یافت. وی دانشجوی دورهٔ دکتری در دانشگاه MIT بود و در سال ۱۹۵۲ مقالهٔ «روشی برای تولید کدی با کمترین تکرار زوائد» را منتشر کرد.
در کدگذاری هافمن، از روشی خاص برای انتخاب نحوهٔ نمایش هر نماد استفاده میشود. روشی به نام کدهای بدون پیشوند (گاهی هم روش «کدهای پیشوندی» گفته میشود. یعنی در این روش رشتهای که نشان دهندهٔ یک نویسه خاص است هیچ گاه پیشوند رشتهٔ دیگر که نمایانگر نویسهٔ دیگر است، نمیباشد.). در این روش نویسههای پرکاربردتر با رشتههای بیتی کوتاهتری نسبت به آنهایی که کاربردشان کمتر است، نشان داده میشوند.
هافمن موفق شد کارآمدترین روش فشرده سازی از این نوع را طراحی کند: نگاشت نکردن نشانهای منفرد مبدا به رشتههای بیتی یکتا، هرگاه تعداد تکرار نمادهای اصلی با آنهایی که برای ایجاد این کد مورد استفاده قرار گرفتند مطابقت کند، خروجیهایی با اندازهٔ کمتر تولید میکند. بعدها روشی برای انجام این کار پیدا شد که این کار را در زمانی خطی انجام میداد.
برای مجموعهای از نمادها با توزیع احتمالی یکنواخت و تعداد عضوهایی برابر با توانی از ۲، کد گذاری هافمن هم ارز با قطعه کد سادهٔ دوجملهای است. مانند کد گذاری اسکی. کد گذاری هافمن روشی متداول برای ایجاد کدهای بدون پیشوند است بطوریکه عبارت «کد هافمن» به گستردگی به عنوان مترادفی برای «کد بدون پیشوند» استفاده میشود، هرچند چنین کدی با الگوریتم هافمن بدست نیامده باشد.
اگرچه کد گذاری هافمن برای کد کردن نماد به نماد بهینهاست، اما گاهی کارآمدی آن بیش از مقدار واقعی پنداشته میشود. برای مثال، کد کردن حسابی و کد کردن LZW، گاهی توانایی بالاتری در فشرده سازی دارند
این پروژه با زبان ++C نوشته شده است و برای ضرب تمامی چند جمله ای ها استفاده می شود در این پروژه از لیست پیوندی استفاده شده است و کارکرد آن به این صورت است که ابتدا تک تک جمله ها را وارد کرده و در انتها گزینه ضرب را انتخاب میکنیم تا حاصل را به ما نشان دهد . در این پروژه از یک منوی شش گزینه ای استفاده شده است .
1- اضافه کردن جمله اول
2- اضافه کردن جمله دوم
3- نمایش جمله اول
4- نمایش جمله دوم
5- ضرب
6- خروج
این برنامه حالتی طراحی شده که حتی عملگرها را نیز محاسبه می کند
برنامه ای بنویسید که یک ماتریس
از ورودی بگیرد و دترمینان آنn*n
را محاسبه کند.
#include<iostream.h>
#include<math.h>
#include<conio.h>
#include<stdlib.h>
#include<stdio.h>
/************توابع کتابخانه ای هستند که به صورت پیش فرض از آنها استفاده میشود*************/
Int det (int [ ],int);
به توان رساندن دو عدد در C++
به دلیل اینکه در زبان برنامه نویسی C++ عملگر محاسباتی برای توان وجود ندارد ما نیاز داریم عمل توان را خودمان با استفاده از حلقه و عملگر ضرب انجام دهیم.
در این بخش سورس کد به همراه فایل ورود شامل توضیحات کد قرار دادیم