24-09-2011, 11:05
|
|
|
חבר מתאריך: 24.09.11
הודעות: 2
|
|
תרגיל שלא הצלחתי || JAVA
אהלן כולם,
טוב יש תרגיל מעצבן שכבר שכבר לי את הראש-
נתון שביל באורך n המרוצף מ3 סוגי אריחים a,b c
הפלט צריך להיות מספר הדרכים השונות לביצוע הריצוף.
נניח אורך השביל הוא 10, האריחים הם 2 4 ו9
קיימות 8 דרכים לריצוף השביל-
22222 =10 \ 2224=10\ 2242=10\2422=10\4222\10\442=10\424\10\244=10.
התוכנית שאני בניתי לא בדיוק מועילה , כי הוא לא בודקת את הרצפים השונים של כמות מסוימת של ספרות אלא ממשיכה הלאה, לדוגמא את הירוק היא מבצעת אבל את הכחול לא....
התוכנית:
import java.util.*;
public class bet
{
static Scanner reader=new Scanner (System.in);
static public void main(String[]args)
{
int n,a,b,c,tempa,tempb,tempc,count=0;
System.out.println("enter the big num");
n=reader.nextInt();
System.out.println("enter 3nums");
a=reader.nextInt();
b=reader.nextInt();
c=reader.nextInt();
tempa=a;
tempb=b;
tempc=c;
while(tempa<n)
{
tempa=tempa+a;
if(tempa==n)
{
count++;
}
if(tempa+b==n)
{
count=count++;
}
if(tempa+c==n)
{
count=count++;
}
}
while(tempb<n)
{
tempb=tempb+b;
if(tempb==n)
{
count++;
}
if(tempb+a==n)
{
count++;;
}
if(tempb+c==n)
{
count++;;
}
}
while(tempc<n)
{
tempc=tempc+c;
if(tempc==n)
{
count++;
}
if(tempc+a==n)
{
count++;;
}
if(tempc+b==n)
{
count++;;
}
}
System.out.println("options-"+count);
}
}
|