مشکل در اجرای برنامه C++‎

ساخت وبلاگ
با سلام دوستان عزیز دو تا برنامه نوشتم کامل نیست اگر دوستانی کسی میتونی کمک کنه ممنون میشم::گریه:
برنامه اول:
ابزار رنگ آمیزی
قصد داریم یک نرم افزار PAINT بنویسیم. این نرم افزار شامل چند ابزار مختلف برای رنگ آمیزی است. ابزار FILLCOLOR WITH در این نرم افزار به این صورت کار می کند که هنگامی که رنگ یک پیکسل را تغر می دهیدتمامی پیکسل های مجاوری که هم رنگ این پیکسل بودند نیز رنگ جدید به خود می گیرند.برای تکمیل این نرم افزار از شما خواسته شده در نوشتن برنامه این ابزار کمک کنید.تابعی بنویسید که یک آرایه دوبعدی شامل رنگ پیکسل ها و مختصات پیکسلی که قصد تغر رنگ آن را داریم ورنگ جدید را دریافت کرده و به صورت بازگشتی رنگ پیکسل موردنظر و تمامی پیکسل های مجاور و هم رنگ آنرا با رنگ جدید جایگزین کند.
ورودی
در ورودی برنامه ابتدا دو عدد N و M را که به ترتیب ابعاد صفحه نقاشی هستند را دریافت و سپس در N خط بعدو در هر خط M کاراکتر را خوانده که هر کاراکتر به معنی رنگ هر پیکسل است. سپس دو عدد x و y که مختصاتپیکسل مورد نظر است و بعد از آن یک کاراکتر که بیانگر رنگ جدید برای این پیکسل است از ورودی دریافت کنید.
خروجی
در خروجی مقادیر آرایه دوبعدی را چاپ کنید.
ورودی نمونه
۱8 8B B B B Y B B BB W B W B B G GB G G B B G BBYYYYGBGBBBYYGBGWBBYYYYGBWBBBYBBBWBBBYYB44P۱
نهنموجیخرو
BBBBYBBBBWBWBBGGBGGBBGBBBPPPPGBGBBBPPGBGWBBPPPPGBW BBBPBBBWBBBPPB
اینم کد برنامه تا اینجا"

#include<stdio.h>
char p[100][100] , color;
int x , y , m , n ;
void fill()
{
p[x][y] = color;
if (x>0 && p[x-1][y] == color) fill(p[x-1][y]);
if (x<m-1 && p[x+1][y] == color) fill(p[x-2][y-1]);
if (y>0 && p[x][y-1] == color) fill(p[x-1][y]);
if (y<n-1 && p[x][y+1] == color) fill(p[x-1][y-2]);
}
int main()
{
int i , j;
printf("Enter size of array: n");
scanf("%d%d",&m,&n);


for(i=0;i<m;i++)
for(j=0;j<n;j++)
{
printf("Enter your color: ");
scanf("%c",&p[i][j]);
}


printf("Enter your color and (x,y): n");
scanf("%c%d%d",&color,&x,&y);
x--;
y--;
fill(p[x][y]);
for(i=0;i<m;i++)
{
for(j=0;j<n;j++);
printf("%c",&p[i][j]);
printf("n");
}
}

اینم برنامه دوم دوستان
پردازش رشتهمحدودیت زمان:
رشته ی S متشکل از حروف کوچک لاتین (case Lower (با طول N به شما داده شده است. شما باید رشته را باتوجه به قوانین زیر فشرده کنید:1.حرف اول رشته را به فرم case Upper) حرف بزرگ لاتین) تبدیل کنید.2.زیر رشته شامل حروف بی صدا را به طول زیر رشته تبدیل کنید.(برای مثال رشته ی abcde به a3e تبدیل میشود.)3.حروف صدا دار پشت سر هم را حذف کنید.(برای مثال رشته ی aaaaeeeiiia به رشته ی aeia تبدیل می شود.)توجه: حرف اول رشته مشمول قوانین دو و سه نمی شود.
ورودی
در خط اول ورودی عدد T که نشان دهندهی تعداد تست کیس هاست نمایش داده میشود. خط اول هر تستکیس عدد N که نشاندهندهی طول رشتهی S است و خط دوم آن رشته S میباشد.
خروجی
برای هر تست کیس رشتهی فشرده شده را چاپ کنید.
ورودی نمونه ۱
210aaabcdefee15pqrsaeiiiouixyz

خروجی ۱نهنمونه 1
Aa3e1eP3aeioui3

کد برنامه تا الان

#include<stdio.h>

int main()
{
char v[100][100];
int i,j,q=1,n,t;
scanf("%d",&t);
for(j=0;j<t;j++)
{
scanf("%d",&n);
for(i=0;i<n;i++)
scanf("%c",&v[t][i]);
}
for(j=0;j<t;j++)
{
if (v[0]>=97 && v[0]<=123)
v[t][0]-=32;
printf("%c",v[0]);
for(i=1;i<n;i++)
if(v[t][i]=='a' || v[t][i]=='e' || v[t][i]=='i' || v[t][i]=='o' || v[t][i]=='u')
if(v[i]==v[i+1]) continue;
else printf("%c",v[i]);
else if (v[t][i+1]=='a' || v[t][i+1]=='e' || v[t][i+1]=='i' || v[t][i+1]=='o' || v[t][i+1]=='u')
{
printf("%d",q);
q=1;
}
else q++;
}
}
تمپوs...
ما را در سایت تمپوs دنبال می کنید

برچسب : نویسنده : خنج tempos بازدید : 211 تاريخ : يکشنبه 7 بهمن 1397 ساعت: 18:24