class FileReader extends EventTarget(...READER_EVENTS) {
// [...]
readAsArrayBuffer() {
throw new Error('FileReader.readAsArrayBuffer is not implemented');
}
}
React Native's way of saying they don't support FileReader.readAsArrayBuffer()
if(!isset($obj->{'s5_4-1'})) {
$obj->{'s5_4-1'} = 0;
}
if(!isset($obj->{'s5_4-2'})) {
$obj->{'s5_4-2'} = 0;
}
if(!isset($obj->{'s5_4-3'})) {
$obj->{'s5_4-3'} = 0;
}
if(!isset($obj->{'s5_4-4'})) {
$obj->{'s5_4-4'} = 0;
}
/*
* To change this license header, choose License Headers in Project Properties.
* To change this template file, choose Tools | Templates
* and open the template in the editor.
O | O | O
-----------
O | O | O
-----------
O | O | O
*/
package tictactoe;
import java.util.Scanner;
public class TicTacToe {
/**
* @param args the command line arguments
* @throws java.lang.InterruptedException
*/
public static void main(String[] args) throws InterruptedException {
Scanner input = new Scanner(System.in);
String a1 = "1";
String a2 = "2";
String a3 = "3";
String a4 = "4";
String a5 = "5";
String a6 = "6";
String a7 = "7";
String a8 = "8";
String a9 = "9";
int inO;
int inX = 0;
boolean winner = false;
PrintBoard(a1,a2,a3,a4,a5,a6,a7,a8,a9);
System.out.printf("How to play - wait for your turn and when it comes write the number of the field that you want to draw in (from 1 to 9)\n");
System.out.printf("Player O's turn: ");
inO = input.nextInt();
while (true) {
switch (inO) {
case 1:
if (a1 == "1") {
a1 = "O";
}
break;
case 2:
if (a2 == "2") {
a2 = "O";
}
break;
case 3:
if (a3 == "3") {
a3 = "O";
}
break;
case 4:
if (a4 == "4") {
a4 = "O";
}
break;
case 5:
if (a5 == "5") {
a5 = "O";
}
break;
case 6:
if (a6 == "6") {
a6 = "O";
}
break;
case 7:
if (a7 == "7") {
a7 = "O";
}
break;
case 8:
if (a8 == "8") {
a8 = "O";
}
break;
case 9:
if (a9 == "9") {
a9 = "O";
}
break;
default:
System.out.printf("An error occured. Please accept it politely and restart the game.");
break;
}
System.out.printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
if (null != Winners(a1,a2,a3,a4,a5,a6,a7,a8,a9))switch (Winners(a1,a2,a3,a4,a5,a6,a7,a8,a9)) {
case "NONE":
if (a1 != "1" && a2 != "2" && a3 != "3" && a4 != "4" && a5 != "5" && a6 != "6" && a7 != "7" && a8 != "8" && a9 != "9") {
winner = true;
System.out.println("DRAW!");
Thread.sleep(3000);
break;
} else {
PrintBoard(a1,a2,a3,a4,a5,a6,a7,a8,a9);
System.out.printf("Player X's turn: ");
inX = input.nextInt();
break;
}
case "X":
winner = true;
System.out.println("X HAS WON!!!");
Thread.sleep(3000);
break;
case "O":
winner = true;
System.out.printf("O HAS WON!!!");
Thread.sleep(3000);
break;
default:
break;
}
if (winner) {
break;
}
switch (inX) {
case 1:
if (a1 == "1") {
a1 = "X";
}
break;
case 2:
if (a2 == "2") {
a2 = "X";
}
break;
case 3:
if (a3 == "3") {
a3 = "X";
}
break;
case 4:
if (a4 == "4") {
a4 = "X";
}
break;
case 5:
if (a5 == "5") {
a5 = "X";
}
break;
case 6:
if (a6 == "6") {
a6 = "X";
}
break;
case 7:
if (a7 == "7") {
a7 = "X";
}
break;
case 8:
if (a8 == "8") {
a8 = "X";
}
break;
case 9:
if (a9 == "9") {
a9 = "X";
}
break;
default:
System.out.printf("An error occured. Please accept it politely and restart the game.");
break;
}
System.out.printf("\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n\n");
if (null != Winners(a1,a2,a3,a4,a5,a6,a7,a8,a9))switch (Winners(a1,a2,a3,a4,a5,a6,a7,a8,a9)) {
case "NONE":
if (a1 != "1" && a2 != "2" && a3 != "3" && a4 != "4" && a5 != "5" && a6 != "6" && a7 != "7" && a8 != "8" && a9 != "9") {
winner = true;
System.out.println("DRAW!");
Thread.sleep(3000);
break;
} else {
PrintBoard(a1,a2,a3,a4,a5,a6,a7,a8,a9);
System.out.printf("Player O's turn: ");
inO = input.nextInt();
break;
}
case "X":
winner = true;
System.out.println("X HAS WON!!!");
Thread.sleep(3000);
break;
case "O":
winner = true;
System.out.println("O HAS WON!!!");
Thread.sleep(3000);
break;
default:
break;
}
if (winner) {
break;
}
}
}
public static void PrintBoard(String f1, String f2, String f3, String f4, String f5, String f6, String f7, String f8, String f9) {
System.out.printf(" %s | %s | %s \n",f1,f2,f3);
System.out.printf(" ----------- \n");
System.out.printf(" %s | %s | %s \n",f4,f5,f6);
System.out.printf(" ----------- \n");
System.out.printf(" %s | %s | %s \n",f7,f8,f9);
System.out.printf(" \n");
}
public static String Winners(String f1, String f2, String f3, String f4, String f5, String f6, String f7, String f8, String f9) {
if (f1 == f2 && f2 == f3 && f3 == "O") {
return "O";
} else if (f4 == f5 && f5 == f6 && f6 == "O") {
return "O";
} else if (f7 == f8 && f8 == f9 && f9 == "O") {
return "O";
} else if (f1 == f4 && f4 == f7 && f7 == "O") {
return "O";
} else if (f2 == f5 && f5 == f8 && f8 == "O") {
return "O";
} else if (f3 == f6 && f6 == f9 && f9 == "O") {
return "O";
} else if (f1 == f5 && f5 == f9 && f9 == "O") {
return "O";
} else if (f3 == f5 && f5 == f7 && f7 == "O") {
return "O";
} else if (f1 == f2 && f2 == f3 && f3 == "X") {
return "X";
} else if (f4 == f5 && f5 == f6 && f6 == "X") {
return "X";
} else if (f7 == f8 && f8 == f9 && f9 == "X") {
return "X";
} else if (f1 == f4 && f4 == f7 && f7 == "X") {
return "X";
} else if (f2 == f5 && f5 == f8 && f8 == "X") {
return "X";
} else if (f3 == f6 && f6 == f9 && f9 == "X") {
return "X";
} else if (f1 == f5 && f5 == f9 && f9 == "X") {
return "X";
} else if (f3 == f5 && f5 == f7 && f7 == "X") {
return "X";
} else {
return "NONE";
}
}
}
There are sooo many problems with this...
foreach ($desired_components as $name => $junk) {
list($component_value, $component_comments) = self::unpackPair($desired_components[$name]);
$desired_components[$name] = self::packPair(round($component_value, 2), $component_comments);
}
latest_tag = "0.0.0"
for tag in tags:
if tag.name.startswith( 'v' ):
if tag.name.replace('v','').replace('.','') > latest_tag.replace('.',''):
latest_tag = tag.name.replace('v','')
auto settingsFileSize = static_cast<int>(sizeof(_settings));
This was in release branch for a month. Casting wasn't even necessary.
local Plr = game.Players.LocalPlayer
for i,v in pairs(game.ReplicatedStorage.DataStorage[Plr.Name].Data["Slot1"].AccessoriesList:GetChildren()) do
v.Value = "Unlocked"
end
for i,v in pairs(game.ReplicatedStorage.DataStorage[Plr.Name].Data["Slot1"].StanceList:GetChildren()) do
v.Value = "Unlocked"
end
for i,v in pairs(game.ReplicatedStorage.DataStorage[Plr.Name].Data["Slot1"].RunningList:GetChildren()) do
v.Value = "Unlocked"
end
for i,v in pairs(game.ReplicatedStorage.DataStorage[Plr.Name].Data["Slot1"].FlyingList:GetChildren()) do
v.Value = "Unlocked"
end
for i,v in pairs(game.ReplicatedStorage.DataStorage[Plr.Name].Data["Slot1"].FightingStyles:GetChildren()) do
v.Value = "Unlocked"
end
for i,v in pairs(game.ReplicatedStorage.DataStorage[Plr.Name].Data["Slot1"].MoveList:GetChildren()) do
v.Value = "Unlocked"
end
for i,v in pairs(game.ReplicatedStorage.DataStorage[Plr.Name].Data["Slot1"].ClothingList:GetChildren()) do
v.Value = "Unlocked"
end
Bad unlock script for Roblox
this.onSubmit = this.onSubmit.bind(this)
this.onClose = this.onClose.bind(this)
somewhere in react-native app
const setFormFlag(state){
state.formFlag ? state.formFlag = false : state.formFlag = true;
}
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if (android.os.Build.VERSION.SDK_INT > 9) {
StrictMode.ThreadPolicy policy = new StrictMode.ThreadPolicy.Builder().permitAll().build();
StrictMode.setThreadPolicy(policy);
}
fileObjectDAO = new FileObjectDAO(this);
iv = (ImageView)findViewById(R.id.imageView);
tv = (TextView)findViewById(R.id.textView);
centerImageView = (ImageButton)findViewById(R.id.imageButton);
leftText = (TextView)findViewById(R.id.textView2);
rightText = (TextView)findViewById(R.id.textView3);
leftArrow = (TextView)findViewById(R.id.textView4);
rightArrow = (TextView)findViewById(R.id.textView9);
leftCancel = (ImageButton)findViewById(R.id.imageButton2);
displayWelcome1 = (TextView)findViewById(R.id.textView5);
displayWelcome2 = (TextView)findViewById(R.id.textView6);
rightCancel = (ImageButton)findViewById(R.id.imageButton3);
seatButton = (ImageButton)findViewById(R.id.imageButton4);
waitButton = (ImageButton)findViewById(R.id.imageButton5);
clearButton = (ImageButton)findViewById(R.id.imageButton6);
enityButton = (ImageButton)findViewById(R.id.imageButton7);
bookButton = (ImageButton)findViewById(R.id.imageButton8);
settingButton = (ImageButton)findViewById(R.id.imageButton9);
displatSeat = (TextView)findViewById(R.id.textView7);
displatSeatNumber = (TextView)findViewById(R.id.textView8);
isClearing = false;
hidenAll();
key1 = 0;
key2 = 0;
key3 = 0;
isError = false;
isWaiting = false;
myTTS = new TapiaTTS(this);
myhandler = new Tapiahandler();
mySTT = new TapiaSTT(this,myhandler,false);
isResume = false;
tapiaAnimation = new TapiaAnimation(this);
liveData.add("愛媛");
liveData.add("松山");
liveData.add("今治");
liveData.add("高知");
liveData.add("福岡");
liveData.add("北九州");
liveData.add("佐賀");
liveData.add("長崎");
liveData.add("熊本");
liveData.add("大分");
liveData.add("別府");
liveData.add("宮崎");
liveData.add("高千穂");
liveData.add("鹿児島");
liveData.add("奄美大島");
liveData.add("屋久島");
liveData.add("沖縄");
liveData.add("那覇");
liveData.add("北海道");
liveData.add("札幌");
liveData.add("函館");
liveData.add("室蘭");
liveData.add("浦河");
liveData.add("旭川");
liveData.add("留萌");
liveData.add("稚内");
liveData.add("網走");
liveData.add("帯広");
liveData.add("登別");
liveData.add("知床");
liveData.add("釧路");
liveData.add("根室");
liveData.add("青森");
liveData.add("岩手");
liveData.add("盛岡");
liveData.add("秋田");
liveData.add("宮城");
liveData.add("仙台");
liveData.add("松島");
liveData.add("泉");
liveData.add("登米");
liveData.add("佐沼");
liveData.add("山形");
liveData.add("福島");
liveData.add("郡山");
liveData.add("茨城");
liveData.add("水戸");
liveData.add("栃木");
liveData.add("日光");
liveData.add("宇都宮");
liveData.add("群馬");
liveData.add("前橋");
liveData.add("高崎");
liveData.add("埼玉");
liveData.add("千葉");
liveData.add("成田");
liveData.add("木更津");
liveData.add("船橋");
liveData.add("松戸");
liveData.add("東京");
liveData.add("銀座");
liveData.add("浅草");
liveData.add("池袋");
liveData.add("上野");
liveData.add("新宿");
liveData.add("渋谷");
liveData.add("品川");
liveData.add("巣鴨");
liveData.add("八王子");
liveData.add("神奈川");
liveData.add("横浜");
liveData.add("川崎");
liveData.add("横須賀");
liveData.add("相模原");
liveData.add("山梨");
liveData.add("甲府");
liveData.add("新潟");
liveData.add("佐渡");
liveData.add("富山");
liveData.add("石川");
liveData.add("金沢");
liveData.add("福井");
liveData.add("長野");
liveData.add("軽井沢");
liveData.add("松本");
liveData.add("岐阜");
liveData.add("飛騨高山");
liveData.add("静岡");
liveData.add("富士");
liveData.add("浜松");
liveData.add("愛知");
liveData.add("名古屋");
liveData.add("三重");
liveData.add("伊勢");
liveData.add("津");
liveData.add("滋賀");
liveData.add("大津");
liveData.add("京都");
liveData.add("大阪");
liveData.add("堺");
liveData.add("東大阪");
liveData.add("兵庫");
liveData.add("神戸");
liveData.add("姫路");
liveData.add("奈良");
liveData.add("和歌山");
liveData.add("鳥取");
liveData.add("島根");
liveData.add("出雲");
liveData.add("松江");
liveData.add("岡山");
liveData.add("広島");
liveData.add("福山");
liveData.add("山口");
liveData.add("下関");
liveData.add("徳島");
liveData.add("香川");
liveData.add("高松");
try {
SN = getSerialNumber();
}catch (Exception e){
SN = "mji123456";
}
//
Thread.setDefaultUncaughtExceptionHandler(new Thread.UncaughtExceptionHandler() {
@Override
public void uncaughtException(Thread paramThread, Throwable paramThrowable) {
myHandaling(paramThread, paramThrowable);
}
});
connectFtp();
tapiaGet = new TapiaGetJson();
setWalkpaper();
// longPressRunnable = new Runnable() {
// public void run() {
// if(currentMode.equalsIgnoreCase("talk")){
// myTTS.stopSpeak();
// mySTT.stop();
// checkHandler98_BLUE.removeCallbacks(checkRunnable98_BLUE);
// isListen = false;
// tapiaAnimation.playColor1(1);
// String [] SpeakArray = {"またあとでね", "またね", "あとでね", "ちょっとひとやすみ", "休憩するね"};
// Random ran = new Random();
// int index = ran.nextInt(SpeakArray.length);
// String toSpeak = SpeakArray[index];
// //Toast.makeText(getApplicationContext(), toSpeak,Toast.LENGTH_SHORT).show();
// myTTS.TapiaSpeak(toSpeak);
// //iv.setImageResource(R.drawable.black);
// myTTS.player.setOnCompletionListener(new MediaPlayer.OnCompletionListener() {
//
// @Override
// public void onCompletion(MediaPlayer mp) {
//// Intent intent = new Intent(context, StartActivity.class);
//// startActivity(intent);
// count98 =0;
// checkStateHander.postDelayed(checkStateRunnable,5000);
// handler98.postDelayed(runnable98,800);
// setSleepMode();
// }
//
// });
// }else if(currentMode.equalsIgnoreCase("sleep")){
// setTalkingMode();
// checkStateHander.removeCallbacks(checkStateRunnable);
// handler98.removeCallbacks(runnable98);
// needForHelp("なにかご用ですか?");
// }
// }
// };
//
createDirIfNotExists("/sdcard/TapiaData/Send/");
createDirIfNotExists("/sdcard/TapiaData/Receive/");
public void run() {
Log.d("Tapia","Check 98");
if(count98==0){
boolean check = false;
boolean check2 = false;
String path = "/Tapia/"+seatNumber+"/";
allFileName = ftpPrintFilesList(path);
if(allFileName.size()==0){
}else{
for(String filename :allFileName){
if(filename.endsWith("98.trg")){
if(!fileObjectDAO.checkFileExit(filename)){
fileObjectDAO.addFile(filename);
isDelete = true;
check = true;
Log.e("checking","98");
ftpDownload(path + filename, "/sdcard/TapiaData/Receive/" + filename);
break;
}
}
}
}
if(!check){
path = "/Tapia/ALL/";
allFileName = ftpPrintFilesList(path);
if(allFileName.size()==0){
}else{
for(String filename :allFileName){
if(filename.endsWith("98.trg")){
if(!fileObjectDAO.checkFileExit(filename)){
fileObjectDAO.addFile(filename);
isDelete = true;
check2 = true;
ftpDownload(path+filename,"/sdcard/TapiaData/Receive/"+filename);
break;
}
}
}
}
}
count98++;
handler98.postDelayed(this, 1000);
}else{
count98++;
if(count98==10)count98=0;
handler98.postDelayed(this, 1000);
}
}
};
Trust me it works!!!
PS. This is 300 out of 3000 lines from one Class
pageEndReached() {
if (!this.endOfResults) {
//load more pages
this.page++;
this.getPosts();
followerCount: null,
postCount: null,
measurementKeys: ["a", "b", "c", "d", "e"],
showDrafts: false,
};
},
nani
try {
channel.send(eventMessage);
} catch (MessageHandlingException ex) {
channel.send(eventMessage);
}
elsif ( $att =~ m/!!ARRAY!!/ ) { # Updated to allow us to get data from an Array -
&Debug("get_value_from_hash:: parsing the ARRAY attribute - $att");
my ( $key1, $key2, $key3, $key4, $key5, $key6 ) = split( /\./, $att );
#&Debug("get_value_from_hash:: key1=$key1, key2=$key2, key3=$key3, key4=$key4, key5=$key5");
if ( defined $key6 ) {
if ( $key5 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1}->{$key2}->{$key3}->{$key4} } ) { $value = $item->{$key6}; }
}
elsif ( $key4 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1}->{$key2}->{$key3} } ) { $value = $item->{$key5}->{$key6}; }
}
elsif ( $key3 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1}->{$key2} } ) { $value = $item->{$key4}->{$key5}->{$key6}; }
}
elsif ( $key2 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1} } ) { $value = $item->{$key3}->{$key4}->{$key5}->{$key6}; }
}
elsif ( $key1 =~ m/!!ARRAY!!/ ) {
for my $item ( @{$hash} ) { $value = $item->{$key2}->{$key3}->{$key4}->{$key5}->{$key6}; }
}
}
elsif ( defined $key5 ) {
if ( $key4 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1}->{$key2}->{$key3} } ) { $value = $item->{$key5}; }
}
elsif ( $key3 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1}->{$key2} } ) { $value = $item->{$key4}->{$key5}; }
}
elsif ( $key2 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1} } ) { $value = $item->{$key3}->{$key4}->{$key5}; }
}
elsif ( $key1 =~ m/!!ARRAY!!/ ) {
for my $item ( @{$hash} ) { $value = $item->{$key1}->{$key3}->{$key4}->{$key5}; }
}
}
elsif ( defined $key4 ) {
if ( $key3 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1}->{$key2} } ) { $value = $item->{$key4}; }
}
elsif ( $key2 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1} } ) { $value = $item->{$key3}->{$key4}; }
}
elsif ( $key1 =~ m/!!ARRAY!!/ ) {
for my $item ( @{$hash} ) { $value = $item->{$key1}->{$key3}->{$key4}; }
}
}
elsif ( defined $key3 ) {
if ( $key2 =~ m/!!ARRAY!!/ ) {
for my $item ( @{ $hash->{$key1} } ) { $value = $item->{$key3}; }
}
elsif ( $key1 =~ m/!!ARRAY!!/ ) {
for my $item ( @{$hash} ) { $value = $item->{$key3}; }
}
}
elsif ( defined $key2 ) {
if ( $key1 =~ m/!!ARRAY!!/ ) {
for my $item ( @{$hash} ) { $value = $item->{$key2}; }
}
}
}
elsif ( $att =~ m/!!HITS\[\d+\]!!/ ) {
&Debug("get_value_from_hash:: parsing the HITS attribute - $att");
my $id = $att;
$id =~ s/!!HITS\[(\d+)\]!!.*/$1/;
$att =~ s/!!HITS\[\d+\]!!\.//;
&Debug("get_value_from_hash:: parsing the attribute - $att");
my ( $key1, $key2, $key3, $key4, $key5, $key6 ) = split( /\./, $att );
#&Debug("get_value_from_hash:: id=$id, key1=$key1, key2=$key2, key3=$key3, key4=$key4, key5=$key5");
if ( defined $key6 ) {
$value = $$hash{hits}{hits}[$id]{$key1}{$key2}{$key3}{$key4}{$key5}{$key6};
}
elsif ( defined $key5 ) {
$value = $$hash{hits}{hits}[$id]{$key1}{$key2}{$key3}{$key4}{$key5};
}
elsif ( defined $key4 ) {
$value = $$hash{hits}{hits}[$id]{$key1}{$key2}{$key3}{$key4};
}
elsif ( defined $key3 ) {
$value = $$hash{hits}{hits}[$id]{$key1}{$key2}{$key3};
}
elsif ( defined $key2 ) {
$value = $$hash{hits}{hits}[$id]{$key1}{$key2};
}
}
elsif ( $att =~ m/!!DELIMITER!!.+!!/ ) {
&Debug("get_value_from_hash:: parsing the DELIMITER attribute - $att");
my $delimiter = $att;
$delimiter =~ s/!!DELIMITER!!(.*)!!.*/$1/;
$att =~ s/!!DELIMITER!!.+!!//;
&Debug("get_value_from_hash:: parsing the attribute - $att");
my ( $key1, $key2, $key3, $key4, $key5, $key6 ) = split( $delimiter, $att );
# &Debug("get_value_from_hash:: key1=$key1, key2=$key2, key3=$key3, key4=$key4, key5=$key5, key6=$key6");
if ( defined $key6 ) {
$value = $$hash{$key1}{$key2}{$key3}{$key4}{$key5}{$key6};
}
elsif ( defined $key5 ) {
$value = $$hash{$key1}{$key2}{$key3}{$key4}{$key5};
}
elsif ( defined $key4 ) {
$value = $$hash{$key1}{$key2}{$key3}{$key4};
}
elsif ( defined $key3 ) {
$value = $$hash{$key1}{$key2}{$key3};
}
elsif ( defined $key2 ) {
$value = $$hash{$key1}{$key2};
}
}
else {
&Debug("get_value_from_hash:: parsing the attribute - $att");
my ( $key1, $key2, $key3, $key4, $key5, $key6 ) = split( /\./, $att );
#&Debug("get_value_from_hash:: key1=$key1, key2=$key2, key3=$key3, key4=$key4, key5=$key5");
if ( defined $key6 ) {
$value = $$hash{$key1}{$key2}{$key3}{$key4}{$key5}{$key6};
}
elsif ( defined $key5 ) {
$value = $$hash{$key1}{$key2}{$key3}{$key4}{$key5};
}
elsif ( defined $key4 ) {
$value = $$hash{$key1}{$key2}{$key3}{$key4};
}
elsif ( defined $key3 ) {
$value = $$hash{$key1}{$key2}{$key3};
}
elsif ( defined $key2 ) {
$value = $$hash{$key1}{$key2};
}
}
When you try to debug, why value is not filled, and find this...
try {
synchronized(this) {
Object obj = null;
if (obj.hashCode() == -1) {
obj = new Object();
}
}
} catch (Throwable t) {
throw t;
} finally {
try {
synchronized(this) {
Object obj = null;
if (obj.hashCode() == -1) {
obj = new Object();
}
}
} catch (Throwable t) {
throw t;
} finally {
try {
synchronized(this) {
Object obj = null;
if (obj.hashCode() == -1) {
obj = new Object();
}
}
} catch (Throwable t) {
throw t;
} finally {
System.exit(1);
}
}
}
Cool code
// enum - full enumeration of knapsack solutions
// (C) Joshua Knowles
#include <stdio.h>
#include <stdlib.h>
#include <math.h>
#include <stdbool.h>
FILE *fp; // file pointer for reading the input files
int Capacity; // capacity of the knapsack (total weight that can be stored)
int Nitems; // number of items available
int *item_weights; // vector of item weights
int *item_values; // vector of item profits or values
int *temp_indexes; // list of temporary item indexes for sorting items by value/weight
int QUIET=0; // this can be set to 1 to suppress output
extern void read_knapsack_instance(char *filename);
extern void print_instance();
extern void sort_by_ratio();
extern int check_evaluate_and_print_sol(int *sol, int *total_value, int *total_weight);
void enumerate();
int next_binary(int *str, int Nitems);
int main(int argc, char *argv[])
{
read_knapsack_instance(argv[1]);
print_instance();
enumerate();
return(0);
}
void enumerate()
{
// Do an exhaustive search (aka enumeration) of all possible ways to pack
// the knapsack.
// This is achieved by creating every binary solution vector of length Nitems.
// For each solution vector, its value and weight is calculated.
int i; // item index
int solution[Nitems+1]; // (binary) solution vector representing items packed
int best_solution[Nitems+1]; // (binary) solution vector for best solution found
int best_value; // total value packed in the best solution
double j=0;
int total_value, total_weight; // total value and total weight of current knapsack solution
int infeasible; // 0 means feasible; -1 means infeasible (violates the capacity constraint)
// set the knapsack initially empty
for(i=1;i<=Nitems;i++)
{
solution[i]=0;
}
QUIET=1;
best_value=0;
while(!(next_binary(&solution[1], Nitems)))
{
/* ADD CODE IN HERE TO KEEP TRACK OF FRACTION OF ENUMERATION DONE */
// calculates the value and weight and feasibility:
infeasible=check_evaluate_and_print_sol(solution, &total_value, &total_weight);
/* ADD CODE IN HERE TO KEEP TRACK OF BEST SOLUTION FOUND*/
}
/* ADD CODE TO PRINT OUT BEST SOLUTION */
}
int next_binary(int *str, int Nitems)
{
// Called with a binary string of length Nitems, this
// function adds "1" to the string, e.g. 0001 would turn to 0010.
// If the string overflows, then the function returns 1, else it returns 0.
int i=Nitems-1;
while(i>=0)
{
if(str[i]==1)
{
str[i]=0;
i--;
}
else
{
str[i]=1;
break;
}
}
if(i==-1)
{
return(1);
}
else
{
return(0);
}
}
A genuine UoM lab.