| Previous CloneSet | Next CloneSet | Back to Main Report |
| Clone Mass | Clones in CloneSet | Parameter Count | Clone Similarity | Syntax Category [Sequence Length] |
|---|---|---|---|---|
| 8 | 6 | 6 | 0.957 | class_body_declaration |
| Clone Abstraction | Parameter Bindings |
| Clone Instance (Click to see clone) | Line Count | Source Line | Source File |
|---|---|---|---|
| 1 | 8 | 218 | Basic_Class1.java |
| 2 | 8 | 231 | Basic_Class1.java |
| 3 | 8 | 244 | Basic_Class1.java |
| 4 | 7 | 257 | Basic_Class1.java |
| 5 | 8 | 297 | Basic_Class1.java |
| 6 | 8 | 392 | Basic_Class1.java |
| ||||
// ****************************************************************
// ************************ Type 1 Clones ***********************
// ****************************************************************
// Note, these clones were taken from the work by Cordy
// Original Code - Cordy
void sumProdO(int n) {
double sum = 0.0; //C1
double prod = 1.0;
for (int i = 1; i <= n; i++)
{
sum = sum + i;
prod = prod * i;
foo(sum, prod);
}
}
|
| ||||
// Example 1A - Type 1 Clone - Cordy
void sumProd1A(int n) {
double sum = 0.0; //C1
double prod = 1.0;
for (int i = 1; i <= n; i++)
{
sum = sum + i;
prod = prod * i;
foo(sum, prod);
}
}
|
| ||||
// Example 1B - Type 1 Clone - Cordy
void sumProd1B(int n) {
double sum = 0.0; //C1
double prod = 1.0; //C
for (int i = 1; i <= n; i++)
{
sum = sum + i;
prod = prod * i;
foo(sum, prod);
}
}
|
| ||||
// Example 1C - Type 1 Clone - Cordy
void sumProd1C(int n) {
double sum = 0.0; //C1
double prod = 1.0;
for (int i = 1; i <= n; i++) {
sum = sum + i;
prod = prod * i;
foo(sum, prod);
}
}
|
| ||||
// Example 2C - Type 2 Clone - Cordy
void sumProd2C(int n) {
int sum = 0; //C1
int prod = 1;
for (int i = 1; i <= n; i++)
{
sum = sum + i;
prod = prod * i;
foo(sum, prod);
}
}
|
| ||||
// Example 4a - Type 4 Clone - Cordy
void sumProd4A(int n) {
double prod = 1.0;
double sum = 0.0; //C1
for (int i = 1; i <= n; i++)
{
sum = sum + i;
prod = prod * i;
foo(sum, prod);
}
}
|
| |||
// Example 4a - Type 4 Clone - Cordy
// Example 2C - Type 2 Clone - Cordy
// Example 1C - Type 1 Clone - Cordy
// Example 1B - Type 1 Clone - Cordy
// Example 1A - Type 1 Clone - Cordy
// ****************************************************************
// ************************ Type 1 Clones ***********************
// ****************************************************************
// Note, these clones were taken from the work by Cordy
// Original Code - Cordy
void [[#variable69c91c0]](int n) {
[[#variable697b2c0]] [[#variable6a15040]]= [[#variable6a14720]]; //C1
[[#variable697b2c0]] [[#variable6a16d00]]= [[#variable6a16c40]]; //C1 //C
for (int i = 1; i <= n; i++) {
sum = sum + i;
prod = prod * i;
foo(sum, prod);
}
}
|
| CloneAbstraction |
| Parameter Index | Clone Instance | Parameter Name | Value |
|---|---|---|---|
| 1 | 1 | [[#69c91c0]] | sumProd4A |
| 1 | 2 | [[#69c91c0]] | sumProd2C |
| 1 | 3 | [[#69c91c0]] | sumProd1C |
| 1 | 4 | [[#69c91c0]] | sumProd1B |
| 1 | 5 | [[#69c91c0]] | sumProd1A |
| 1 | 6 | [[#69c91c0]] | sumProdO |
| 2 | 1 | [[#697b2c0]] | double |
| 2 | 2 | [[#697b2c0]] | int |
| 2 | 3 | [[#697b2c0]] | double |
| 2 | 4 | [[#697b2c0]] | double |
| 2 | 5 | [[#697b2c0]] | double |
| 2 | 6 | [[#697b2c0]] | double |
| 3 | 1 | [[#6a15040]] | prod |
| 3 | 2 | [[#6a15040]] | sum |
| 3 | 3 | [[#6a15040]] | sum |
| 3 | 4 | [[#6a15040]] | sum |
| 3 | 5 | [[#6a15040]] | sum |
| 3 | 6 | [[#6a15040]] | sum |
| 4 | 1 | [[#6a14720]] | 1.0 |
| 4 | 2 | [[#6a14720]] | 0 |
| 4 | 3 | [[#6a14720]] | 0.0 |
| 4 | 4 | [[#6a14720]] | 0.0 |
| 4 | 5 | [[#6a14720]] | 0.0 |
| 4 | 6 | [[#6a14720]] | 0.0 |
| 5 | 1 | [[#6a16d00]] | sum |
| 5 | 2 | [[#6a16d00]] | prod |
| 5 | 3 | [[#6a16d00]] | prod |
| 5 | 4 | [[#6a16d00]] | prod |
| 5 | 5 | [[#6a16d00]] | prod |
| 5 | 6 | [[#6a16d00]] | prod |
| 6 | 1 | [[#6a16c40]] | 0.0 |
| 6 | 2 | [[#6a16c40]] | 1 |
| 6 | 3 | [[#6a16c40]] | 1.0 |
| 6 | 4 | [[#6a16c40]] | 1.0 |
| 6 | 5 | [[#6a16c40]] | 1.0 |
| 6 | 6 | [[#6a16c40]] | 1.0 |