Mr_Parham
یک شنبه 23 مهر 1391, 23:00 عصر
سلام
من چند وقتی هست که دوره های دانشگاه هاروارد رو شروع کردم برای Computer Science - رایگان برای هر کسی در دسترس هست-، توی این Course بهتون آموزش برنامه نویسی و طرز درست فکر کردن برای برنامه نویسی یاد داده میشه (تا اونجایی که من جلو رفتم حداقل)، حالا توی یکی از تمرین ها باید یک برنامه ایجاد کنم که یک عددی از کاربر بگیره در ابتدا که قرار است کلید Encryption برنامه باشه، بعد یک String بگیرم که کاربر میخواد به اصطلاح Encrypt کنه و بعد تمام Character ها رو دونه به دونه Encrypt کنم و نشون بدم، خوب تا اینجا به نظر مشکلی ندارم، مشکل وقتی ایجاد میشه که برای مثال من حرف Z رو میخوام 4 تا بهش اضافه کنم، این همونجوری که می دونید دیگه حرف معمولی حساب نمیشه :یی پس این مشکل اول هست، گفتند باید از % استفاده کنم ولی چجوری نمیدونم، مشکلی بعدی این هست که توی اون String اگر عددی وارد بشه و یا Space نباید Encrypt بشه، این کدی هست که من زدم تا اینجا و کار می کنه کاملا به غیر از مشکلات ذکر شده، کسی از دوستان میتونه کمک کنه؟
کد:
#include <stdio.h>
#include <cs50.h>
#include <string.h>
int
main (int argc, string argv[])
{
//Changing the string to integer (The key)
int key = atoi(argv[1]);
//Checking if the Key is valid
if (key<= 0)
{
printf("Please try entering the key again\n");
return 1;
}
//Asking user for uncrypted text
printf("Please enter the text you would like to encrypt: \n");
//Getting the uncrypted text
string PlaneText = GetString();
//Finding the length of the uncrypted text
int length = strlen(PlaneText);
do
{
for (int i = 0; i < length; i++)
{
printf("%c",PlaneText[i]+key);
}
}
printf("\n");
}
پ ن . اون فایل cs50.h توش تعریف شده که چجوری String بگیره و String رو هم اصلا برای همین تونستم استفاده کنم (تا جایی که میدونم String اصلا وجود نداره توی C)
من چند وقتی هست که دوره های دانشگاه هاروارد رو شروع کردم برای Computer Science - رایگان برای هر کسی در دسترس هست-، توی این Course بهتون آموزش برنامه نویسی و طرز درست فکر کردن برای برنامه نویسی یاد داده میشه (تا اونجایی که من جلو رفتم حداقل)، حالا توی یکی از تمرین ها باید یک برنامه ایجاد کنم که یک عددی از کاربر بگیره در ابتدا که قرار است کلید Encryption برنامه باشه، بعد یک String بگیرم که کاربر میخواد به اصطلاح Encrypt کنه و بعد تمام Character ها رو دونه به دونه Encrypt کنم و نشون بدم، خوب تا اینجا به نظر مشکلی ندارم، مشکل وقتی ایجاد میشه که برای مثال من حرف Z رو میخوام 4 تا بهش اضافه کنم، این همونجوری که می دونید دیگه حرف معمولی حساب نمیشه :یی پس این مشکل اول هست، گفتند باید از % استفاده کنم ولی چجوری نمیدونم، مشکلی بعدی این هست که توی اون String اگر عددی وارد بشه و یا Space نباید Encrypt بشه، این کدی هست که من زدم تا اینجا و کار می کنه کاملا به غیر از مشکلات ذکر شده، کسی از دوستان میتونه کمک کنه؟
کد:
#include <stdio.h>
#include <cs50.h>
#include <string.h>
int
main (int argc, string argv[])
{
//Changing the string to integer (The key)
int key = atoi(argv[1]);
//Checking if the Key is valid
if (key<= 0)
{
printf("Please try entering the key again\n");
return 1;
}
//Asking user for uncrypted text
printf("Please enter the text you would like to encrypt: \n");
//Getting the uncrypted text
string PlaneText = GetString();
//Finding the length of the uncrypted text
int length = strlen(PlaneText);
do
{
for (int i = 0; i < length; i++)
{
printf("%c",PlaneText[i]+key);
}
}
printf("\n");
}
پ ن . اون فایل cs50.h توش تعریف شده که چجوری String بگیره و String رو هم اصلا برای همین تونستم استفاده کنم (تا جایی که میدونم String اصلا وجود نداره توی C)